ES6
hdupuyang
这个作者很懒,什么都没留下…
展开
-
对象或数组的深拷贝
function deepCopy(obj,cache){ if(cache===void 0) cache=[] if(obj===null||typeof obj !== "object") return obj let hit=cache.filter(i=>i.origin===obj)[0] if(hit) return hit.copy let copy=Array.isArray(obj)?[]:{} cache.push({原创 2020-07-25 22:32:45 · 114 阅读 · 0 评论 -
展开嵌套数组的方法
var arr=[[1,2],[3,[4,5],6]]// 方法一 硬写function f1(tree,res){ if(Array.isArray(tree)){ for(let i=0;i<tree.length;i++){ f1(tree[i],res) } }else{ res.push(tree) } return res}f1(arr,[])//方法二 Generat原创 2020-06-25 19:52:12 · 732 阅读 · 0 评论 -
ES6中新的基本数据类型Symbol
ES6中新的基本数据类型Symbol基本用法内置的Symbol值`Symbol.keyFor(Symbol.for("foo"))``Symbol.isConcatSpreadable`基本用法let s1 = Symbol('foo')let s2 = Symbol('foo')s1 === s2 // fasle s1.description // "foo"作为对象的属性名let s1 = Symbol('foo')let obj = {}obj[s1] = 'hello wor原创 2020-05-21 15:37:17 · 213 阅读 · 0 评论 -
ES6中Set与Map数据结构
ES6中Set与Map数据结构Setset实例的属性和方法WeakSetMapWeakMap前两天电面问到了,支支吾吾只是答了个大概,深入了解一下。Set集合,本质是一个构造函数,类似与数组,但成员都是唯一的。set实例的属性和方法属性:Set.prototype.constructor:构造函数。Set.prototype.size:返回Set实例的成员总数。操作方法:Set.prototype.add(value):添加某个值,返回Set结构本身。Set.prototype.d原创 2020-05-17 10:49:11 · 174 阅读 · 0 评论