DAY TWO

函数:

  1. 关键字:
    argument:只在函数内部起作用,并且永远**指向当前函数调用者传入的所有参数**;也就是说,即使函数不定义任何参数还是可以拿到参数的值,似于array,但绝对不是array.
    最常用法:判断传入的参数个数。
// foo(a[, b], c)
// 接收2~3个参数,b是可选参数,如果只传2个参数,b默认为null:
function foo(a, b, c) {
    if (arguments.length === 2) {
        // 实际拿到的参数是a和b,c为undefined
        c = b; // 把b赋给c
        b = null; // b变为默认值
    }
}

rest: 为了获取除已定义的之外的参数,引入了rest,如果传入的参数不足,rest会接收一个空数组(注意不是undefined)
用法:写在参数的最后面,前面用... 标识。
this:
在方法内部,this是一个特殊的关键字,始终指向当前对象
2. 作用域:
全局变量: var
变量: let 为块级作用域
常量: const 为块级作用域

  1. 解构赋值:即,可以同时对多个变量进行赋值。
    var [x,y,z] = ['0','hello','ES6']// x,y,z 分别被赋值为数组对应的元素。
    数组本身有嵌套时,也可以进行解构赋值,但注意嵌套层次与位置要一致。
    var [x,[y,z]] = ['0],['hello','ES6']
    同时也可以忽略某些元素var [,, z] = ['0],['hello','ES6']
    具体可查看廖雪峰官网中的js教程作用域与解构赋值。

猜你喜欢

转载自blog.csdn.net/duus_nabolun/article/details/82994909
two