前端面试——JS函数

1.介绍一下JS中的函数?

   (1) 2种声明方法

      函数声明和函数表达式。二者的区别如下。

  • 定义方式的区别
  • 解释器在解释JS时会对函数声明优先处理,因此可以在声明的前面调用函数,但函数表达式必须要声明之后才能使用。

(2)没有重载的概念,因为在JS中函数名只是一个指向函数的指针

(3)JS中的函数是一个值,可以当做形参传递给其他函数,也可以作为另一个函数的返回结果用return返回。

(4)函数的内部方法call和apply用于改变函数的作用域。

2.函数的call方法和apply方法

https://blog.csdn.net/ganyingxie123456/article/details/70855586

      相同点:每个函数都包含两个非继承而来的方法:call()方法和apply()方法,这两个方法的作用一样,都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域。一般来说,某个方法中的this总是指向调用它的对象,但是使用call()和apply()方法时,就会改变this的指向。

      不同点:用法不一样,call方法需要将参数列表一个一个的写出来,而apply方法需要将参数列表写进一个数组调用。

           

猜你喜欢

转载自blog.csdn.net/qq_21428081/article/details/82498379
今日推荐