【发布时间】:2017-05-28 19:25:01
【问题描述】:
我在 java 脚本中有这段代码
var x = 5;
function f(y) { return (x + y) - 2 };
function g(h) { var x = 7; return h(x) };
{ var x = 10; z = g(f) };
z 值为 15。为什么? 表达式 (x+y)-2 被计算为 (10+7)-2。 为什么 x 得到 10 的值,而不是前一个的值 块,其中 x = 7? 感谢您的帮助
【问题讨论】:
-
你最后有一个不寻常的块......
-
您的代码缺少分号。
-
@mike Oh cmon...我把所有的脑力都花在了写答案上,而你抄袭了这个问题??
-
对不起!我不知道其他帖子。
标签: javascript variables scope local