簡體   English   中英

JavaScript“使用嚴格”在 Chrome 片段/DevTools 源面板中不一致地工作

[英]JavaScript "use strict" inconsistently working in Chrome snippets / DevTools Sources panel

我目前正在上一門關於“高級”Javascript 概念的 Udemy 課程 ( https://www.udemy.com/course/javascript-advanced/ ),第一課介紹了“use strict”命令及其功能。 該課程使用 Chrome 的源代碼面板編寫片段代碼並觀察預期結果。

出於某種原因,在觀看視頻時,我使用“use strict”命令的成功不一致。

示例:本課程編寫了以下代碼作為“use strict”何時會在屏幕上拋出錯誤以展示存在未定義變量的示例。

 "use strict"; // var theVal = 0; // thVal = 1; // if (theVal > 0) { console.log("Hello;"); }

在視頻中,拋出了一個錯誤——“Uncaught ReferenceError: thVal is not defined”——並且紅色的“x”出現在代碼片段的第 5 行,以突出顯示錯誤被拋出的位置。 但是,由於某種原因,我沒有看到該錯誤。

奇怪的是,我可以將錯誤陳述的變量更改為任何其他變量 - “thValue”、“theVol”等 - 並且會出現錯誤消息和“x”。 我在這里缺少什么嗎? 我確保在運行前保存片段,但出於某種原因,我無法完全按照顯示的方式觀看視頻,這讓我很困惑,為什么在使用“thVal”時會發生這種情況。

 "use strict"; var theVal = 0; theVal = 1; if (theVal > 0) { console.log("Hello;"); }

"use strict"的目的是表明代碼應該在“嚴格模式”下執行。 在嚴格模式下,你不能使用未聲明的變量。 例如thVal = 1; 未申報。 您可以在上面找到工作代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM