Skip to content

Instantly share code, notes, and snippets.

View LeeHao12's full-sized avatar
🎯
Focusing

leehao LeeHao12

🎯
Focusing
View GitHub Profile
@hashrock
hashrock / svg-drag.js
Last active January 31, 2024 13:22
SVG Drag and Drop with React Hooks
import React from "react";
import ReactDOM from "react-dom";
const Circle = () => {
const [position, setPosition] = React.useState({
x: 100,
y: 100,
active: false,
offset: { }
});
@smallnewer
smallnewer / equalArray.js
Last active August 1, 2018 16:31
判断复杂数据类型是否相等。在JS中判断两个对象、函数、数组等是否完全相等是很不方便的。 本例有自己的两个复杂数据类型判断的规则,不适合所有场景。 数组对比中,没有考虑排序问题,是否考虑,有待思考。 ====== 对象对比性能测试:(很卡很长时间) http://jsperf.com/equalobjecttest1 <br> ### result for-in应该比for性能要差,所以判断对象是否相等时,对象属性越多,越浪费时间。1000个属性的对象,一毫秒只能判断2-3个。100个属性的对象大概速度是6/ms 所以在MVC里面处理大数据还是不太实用的,一般的小场景用用无妨。 ### 结论 。。。
/**
* 判断两个数组是否相等
* 浅度相等:两数组toString一样
* 深度相等的判断规则:
* 1.长度相等
* 2.俩数组的每一项:
* 若为数组:参考本函数规则。
* 若为对象:参考equalObject的规则。
* 其他的数据类型,要求===判断为true
* @param {[type]} arr1