第三十一关:严厉的教官

任务目标:开启 "use strict" 模式

🐛

巴格

我最喜欢 JS 了!因为我随便乱写代码它都不报错!

x = 3.14; (忘记写 var) -> 没问题!

delete Object.prototype; (删除基本属性) -> 没问题!

JS 队长

这种好日子结束了!为了写出高质量的代码,我们需要请出严厉教官

只要在代码第一行加上 "use strict";,JS 就会变得六亲不认!

🦸‍♂️
"use strict"; x = 3.14; // ❌ 报错!x 未定义!

🛡️ 为什么找虐?

虽然严格模式会报很多错,但它能:

🎮 军训任务

下面的代码在普通模式下能跑,但在严格模式下会报错。

请点击按钮,开启严格模式,看看会发生什么。

function test() { // 这里目前空空如也 y = 10; // 忘记声明变量了 return "y 是 " + y; }