首页 > IT职业 > IT生活 > 形参实参,同步异步,this的判断
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 bend
如果是异步的话
console.log('start');
setTimeout(function(){ console.log('a');
});console.log('end');
则会输出的是
startenda
判断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);
这时候也是全局的情况
作者:徐金俊
链接:https://www.jianshu.com/p/0de2871fbd2b
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2637/viewspace-2814321/ ,如需转载,请注明出处,否则将追究法律责任。