ES6扩展运算符实现数组的深拷贝
用下面的方法实现数组的深拷贝是最简单的。
1 | var arr = [1,2,3,4,5] |
太妙了!
用下面的方法实现数组的深拷贝是最简单的。
1 | var arr = [1,2,3,4,5] |
太妙了!
在JavaScript中,call
、apply
和bind
是Function
对象自带的三个方法,这三个方法的主要作用是改变函数中的this
指向。
bind
是返回对应函数,便于稍后调用;apply
、call
则是立即调用 。
使用callback以及call技术, 写出标准化的BFS,DFS. 以及扩展性极强的contain.
简单的链表训练
一个专属JS的不起眼的坑!!!
1 | for(var i in nums){ |
上述代码中nums[i+1]结果undifined, 因为for in遍历的原理是什么呢? 其实是把nums数组当做Obejct(一个键值对结构), 其中i 是对于其key的遍历, 因此i 其实是字符串”0”, 而i+1则表示”01”, 自然是找不到结果.