关于JS函数

2016-09-05  本文已影响0人  尹萨萨

函数声明和函数表达式有什么区别

function example(  ){
    console.log(a1)
}
var hanShu=function example( ) {
   consolo.log(a2)
}

函数表达式将一个函数声明赋值给一个变量。
两者有一个明显的区别即是函数声明会前置,而函数表达式不行。

什么是变量的声明前置?什么是函数的声明前置

对于arguments 的理解

arguments是函数自带的一个参数,他可以调用函数的参数值
例如:

function message( name, age , tel){
           alert(arguments[0]);
}

arguments对象类似于数组,通过[0],[1],[2]等,来调用函数内第一个,第二个,第三个参数。
同时还有一个arguments.length 属性可以知道有多少个参数传递给了函数。

在Javascript中函数的重载怎样实现

function name( ) {
    if (arguments.length==1){
        console.log(arguments[0]+10);
    }else if(arguments.length==2){
        console.log(arguments[0]+arguments[1]);
    }
}

立即执行函数表达式是什么?有什么作用?

(function example( ) {
      console.log(a)
})( )

因为javascript语言中没有块级作用域,可以用次将函数包裹,避免变量的相互影响,减少错误。

什么是函数的作用域链

函数的作用域链是指根据代码的结构,形成一个单独的作用域,而作用域之间又有关联,形成一个链状的结构,构成作用域。

上一篇 下一篇

猜你喜欢

热点阅读