美文网首页程序员让前端飞Web 前端开发
形参实参,同步异步,this的判断

形参实参,同步异步,this的判断

作者: 小7丁 | 来源:发表于2018-04-27 21:49 被阅读19次

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值就看函数是怎么被调用的
  1. 第一种情况指向全局。
function print(){
    console.log(this)
}
  1. 第二种情况当成一个对象的一个方法,这时候this指向的最近的那个对象
let obj = {
    a: 'a',
    fn(){
        console.log(this);
    }
}
obj.fn()
  1. 第三种情况
function executeCallback(cb){
    cb();//cb是全局调用,cb就是obj.fn
}
executeCallback(obj.fn);

这时候也是全局的情况

相关文章

  • 形参实参,同步异步,this的判断

    parameters(形参) vs arguments(实参) a就是形参,就是一个占坑符号。hello就是实参 ...

  • Javascript中对arguments的一点点理解

    Javascript中的arguments对象 实参和形参的同步性 实参是存储在arguments对象中,argu...

  • 函数闭包

    定义形式: 传入实参时实参可多于形参也可少于形参 实参列表: Arguments

  • 11.29setInterval

    形参,实参 形参:形式参数//fn(a,b,c)实参:实际参数//fn(1,2,3);arguments:实参的集...

  • 三种自执行函数

    三种写法: 1、!function(形参){}(实参) 2、(function(形参){}(实参)) 3、(fun...

  • Python3:函数

    示例 位置实参与关键字实参 使用位置实参调用函数,实参的顺序要和形参的顺序一样 关键字实参通过形参名-实参的形式传...

  • Python的5种传参姿势,花两分钟了解一下

    位置实参 实参和形参的位置是关联对应的。一个实参对应一个相应位置的形参。 ​关键字实参 实参以 key=value...

  • 形参 实参

    形参是定义方法的时候,该方法所携带的参数,比如有一个方法public void printInfo(String ...

  • OC内存区域

    c语言中形参和实参 形参 form parameter实参 real parameter出现在函数定义中的...

  • C++ Primer: Functions

    1. 函数基础 形参和实参实参是形参的初始值. 形参和实参类型要一致, 顺序要对应. (但编译器具体按什么顺序求值...

网友评论

    本文标题:形参实参,同步异步,this的判断

    本文链接:https://www.haomeiwen.com/subject/iwoilftx.html