freeCodeCamp/curriculum/challenges/chinese/02-javascript-algorithms-an.../basic-javascript/global-scope-and-functions.md

1.3 KiB
Raw Blame History

id title challengeType videoUrl forumTopicId
56533eb9ac21ba0edf2244be 全局作用域和函数 1 https://scrimba.com/c/cQM7mCN 18193

--description--

在 JavaScript 中,作用域涉及到变量的作用范围。在函数外定义的变量具有 全局 作用域。这意味着,具有全局作用域的变量可以在代码的任何地方被调用。

这些没有使用var关键字定义的变量会被自动创建在全局作用域中形成全局变量。当在代码其他地方无意间定义了一个变量刚好变量名与全局变量相同这时会产生意想不到的后果。因此你应该总是使用var关键字来声明你的变量。

--instructions--

在函数外声明一个全局变量myGlobal,并给它一个初始值10

在函数fun1的内部,使用var关键字来声明oopsGlobal,并赋值为5

--hints--

应定义myGlobal

assert(typeof myGlobal != 'undefined');

myGlobal的值应为10

assert(myGlobal === 10);

应使用var关键字定义myGlobal

assert(/var\s+myGlobal/.test(code));

oopsGlobal应为全局变量且值为5

assert(typeof oopsGlobal != 'undefined' && oopsGlobal === 5);

--solutions--