1.写一个阶层的递归:
function ff(num) {
if(num <= 1) {
return 1;
}else{
return num * arguments.callee(num -1);
}
}
2.将类数组对象 装换为 数组
Array.prototype.slice.call(arguments).sort();
- forEach和map都不会在原数组上改动,但
forEach: 没有返回值,和for循环一样
map: 返回一个新数组
every:&&,每一项是true,则返回true
some:||,有一项为true,则返回true
filter: 返回为true的项
4.this的绑定
深入理解this机制系列第一篇——this的4种绑定规则
5.箭头函数注意:
1.没有自己的this,所以this是外部代码块的this(解决了this指向不确定的问题)
2.没有自己的arguments,arguments是外部代码块的this(rest参数代替)
3.没有自己的this,箭头函数因为不能作为构造函数,不能new
function foo() {
setTimeout(() => {
console.log(this.id);
})
}
foo.call({id: 22});// id: 22