函数与作用域

2017-03-04  本文已影响0人  Chy18

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

函数声明:使用function关键字可以声明一个函数。

//函数声明
** function** sayHello(){
console.log('hello')
}
//函数调用
sayHello()

函数表达式:

var sayHello = function(){
console.log('hello');
}
sayHello()

区别:函数声明的声明不必放到调用的前面,函数表达式的声明必须放到调用的前面。

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

Paste_Image.png

3.arguments 是什么

类数组对象,

Paste_Image.png

4.函数的"重载"怎样实现

在JS中没有重载, 同名函数会覆盖。 但可以在函数体针对不同的参数调用执行相应的逻辑。

Paste_Image.png

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

Paste_Image.png

作用: 隔离作用域

其他写法:
(function fn1() {});
// 在数组初始化器内只能是表达式
[function fn2() {}];
// 逗号也只能操作表达式
1, function fn3() {};

6.求n!,用递归来实现

Paste_Image.png

7.以下代码输出什么?

Paste_Image.png

8.写一个函数,返回参数的平方和?

Paste_Image.png

9.如下代码的输出?为什么

Paste_Image.png

10.如下代码的输出?为什么

Paste_Image.png

11.如下代码输出什么? 写出作用域链查找过程伪代码

Paste_Image.png

12. 如下代码输出什么? 写出作用域链查找过程伪代码

Paste_Image.png

13.以下代码输出什么? 写出作用域链的查找过程伪代码

Paste_Image.png

14.以下代码输出什么? 写出作用域链查找过程伪代码

Paste_Image.png
上一篇 下一篇

猜你喜欢

热点阅读