We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent bb90914 commit 95118cfCopy full SHA for 95118cf
docs/function.md
@@ -1144,7 +1144,16 @@ factorial(5, 1) // 120
1144
1145
由此可见,“尾调用优化”对递归操作意义重大,所以一些函数式编程语言将其写入了语言规格。ES6也是如此,第一次明确规定,所有ECMAScript的实现,都必须部署“尾调用优化”。这就是说,在ES6中,只要使用尾递归,就不会发生栈溢出,相对节省内存。
1146
1147
-注意,只有开启严格模式,尾调用优化才会生效。由于一旦启用尾调用优化,`func.arguments`和`func.caller`这两个函数内部对象就失去意义了,因为外层的帧会被整个替换掉,这两个对象包含的信息就会被移除,所以在严格模式下,这两个对象也是不可用的。
+注意,只有开启严格模式,尾调用优化才会生效。由于一旦启用尾调用优化,`func.arguments`和`func.caller`这两个函数内部对象就失去意义了,因为外层的帧会被整个替换掉,这两个对象包含的信息就会被移除。严格模式下,这两个对象也是不可用的。
1148
+
1149
+```javascript
1150
+function restricted() {
1151
+ "use strict";
1152
+ restricted.caller; // 报错
1153
+ restricted.arguments; // 报错
1154
+}
1155
+restricted();
1156
+```
1157
1158
### 递归函数的改写
1159
0 commit comments