parameters(形参) vs arguments(实参)
functioon print(a) {
console.log(a);
}
print('hello','i')
a就是形参,就是一个占坑符号。
hello就是实参
如何判断同步和异步
console.log('start');
['a','b'].forEach(function(it){
console.log(it);
});
console.log('end');
如果是同步的话,就会顺序输出
start
a
b
end
如果是异步的话
console.log('start');
setTimeout(function(){
console.log('a');
});
console.log('end');
则会输出的是
start
end
a
this怎么判断
- 判断this值就看函数是怎么被调用的
- 第一种情况指向全局。
function print(){
console.log(this)
}
- 第二种情况当成一个对象的一个方法,这时候this指向的最近的那个对象
let obj = {
a: 'a',
fn(){
console.log(this);
}
}
obj.fn()
- 第三种情况
function executeCallback(cb){
cb();//cb是全局调用,cb就是obj.fn
}
executeCallback(obj.fn);
这时候也是全局的情况
网友评论