ES5的嚴格模式,就是比普通js運行機制,更嚴格的模式。
如何使用嚴格模式:
1.在整個<Script>
或js文件範圍內啓用嚴格模式,在頂部加"use strict";
2.僅在一個函數內啓用嚴格模式:在函數頂部加"use strict";
嚴格模式規定:
(1)禁止給未聲明的變量賦值;
(2)匿名函數自調和普通函數調用中的this不再默認指向window,而是undefined,都是爲了避免內存泄漏;
(3)禁用arguments.callee
arguments.callee:在函數調用時,在函數內部引用當前函數本身;
何時:遞歸
爲甚:爲了在函數內自動獲得當前函數名,避免寫死
遞歸存在的問題:重複計算量極大,效率極低
所以:禁止使用arguments.callee,等於禁止使用遞歸!
解決方法:所有遞歸,都可以用循環代替!
(4)將靜默失敗升級爲錯誤!
Q029:什麼是嚴格模式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Javascript相關學習
雪域迷影
2020-07-06 04:09:46
ECMAScript學習二:Array數組方法
WeiAiGeWang
2020-07-03 05:54:34
JavaScript中this指針指向問題
WeiAiGeWang
2020-07-03 05:54:34
原生JS實現簡單頁面效果
WeiAiGeWang
2020-07-03 05:54:34
Google IO 2019整理之new features in javascript
enl0ve
2020-07-03 00:41:37
Angularjs之UI
enl0ve
2020-07-03 00:41:37
Object.assign的polyfill引起的思考
enl0ve
2020-07-03 00:41:37
scripts 1# use fs module to search keywords in files
enl0ve
2020-07-03 00:41:37
Object 對象-JavaScript教程
雪域迷影
2020-07-02 19:15:25
異步操作概述-JavaScript 教程
雪域迷影
2020-07-02 19:15:25
初識jQuery基礎入門到放棄Day3——筆記整理+作業×1+經典例題×1
1.jQuery 尺寸操作 jQuery 尺寸操作包括元素寬高的獲取和設置,且不一樣的API對應不一樣的盒子模型 <body> <div></div> <script> $(function() {
UndeFIned丶
2020-07-01 05:27:16
JavaScript面向對象學習(part2)——筆記整理→香菇
文章目錄 一.構造函數和原型 1.對象的創建方式 1.2靜態成員和實例成員 1.2.1實例成員 1.2.2靜態成員 1.3構造函數的問題 1.4構造函數原型prototype
UndeFIned丶
2020-07-01 05:27:15
集合框架之ArrayList源碼分析
易水墨龙吟
2020-07-08 06:13:21
【C++方向】 面試問題彙總
ylemfei
2020-07-07 00:38:47