作用域提升问题。
代码语言:javascript复制const arr=[]
for(var i=0; i<=2; i ){
arr[i]=function(){
return i*2;
}
}
console.log(arr[0]())
console.log(arr[1]())
console.log(arr[2]())
image.png
代码语言:javascript复制let evens=[1,2,3,4,5,6];
let odds=evens.map(v=>v 1);
console.log(evens,odds)
image.png
this 的对象,指向问题。
代码语言:javascript复制var factory=function(a,b){
this.a=a;
this.b=b;
this.c={
a:6,
b:function() {
return this.a;
}
}
}
console.log(new factory(1,2).c.b())
结果6, this指向当前对象
代码语言:javascript复制var factory2=function(a,b){
this.a=a;
this.b=b;
this.c={
a:6,
b:()=> {
return this.a;
}
}
}
console.log(new factory2(1,2).c.b())
结果1
es6可以函数给默认参数,可以传递多个可变的参数。
代码语言:javascript复制function sum(...a)
{
var sum=0;
a.forEach(item=>{
sum =item;
})
return sum;
}