英文原文地址:http://dmitry.baranovskiy.com/post/91403200
Dmitry Baranovskiy 的博客中有篇文章(http://dmitry.baranovskiy.com/post/91403200),其中有五段小代码,用来测试是否理解 JavaScript 的核心,闭包和作用域。大家先试着给出 alert 语句的输出结果。之后再建一个测试文件,检测你的答案。
一
if (!("a" in window)) { var a = 1; } alert (a);
二
var a = 1, b = function a (x) { x && a (--x); }; alert (a);
三
function a (x) { return x * 2; } var a; alert (a);
四
function b (x, y, a) { arguments[2] = 10; alert (a); } b(1, 2, 3);
五
function a () { alert (this); } a.call (null);