关注
JavaScript严格模式(Strict mode)规定的内容主要包括以下几个方面:
1. 变量必须先声明后使用:在严格模式下,变量必须通过var、let或const关键字进行声明,否则会抛出ReferenceError。在非严格模式下,未声明的变量会被隐式创建,并被添加到全局对象中1。
2. 禁止删除变量、函数或函数参数:在严格模式下,使用delete操作符删除变量、函数或函数参数会抛出SyntaxError。
3. 禁止对只读属性进行赋值:在严格模式下,对只读属性(通过const关键字声明的常量)进行赋值会抛出TypeError。
4. 禁止使用八进制字面量:在严格模式下,以0开头的数字会被视为八进制字面量,这在非严格模式下是允许的。严格模式下,使用八进制字面量会抛出SyntaxError1。
5. 限制this值:在严格模式下,函数内部的this值不再是全局对象,而是undefined,除非通过call()、apply()或bind()明确指定1。
6. 禁止使用重复的函数参数名:在严格模式下,函数参数名不能重复。在非严格模式下,重复的函数参数名会被忽略1。
7. 禁止使用with语句:在严格模式下,使用with语句会抛出SyntaxError。with语句在非严格模式下允许将对象的属性添加到作用域链中,但这被认为是不推荐使用的特性1。
8. 限制eval和arguments的赋值:在严格模式下,无法对eval和arguments进行赋值。在非严格模式下,这种赋值是允许的1。
启用严格模式的方法:通过在脚本或函数的开头添加指令"use strict";来启用严格模式。这行指令告诉解释器或编译器以严格模式来执行代码。如果这行指令不在第一行,则整个脚本将以正常模式运行
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客吹哨人:哨哥晚点统一更新到黑名单:能救一个是一个!26届毁意向毁约裁员黑名单https://www.nowcoder.com/discuss/1525833
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 双9Java0基础➡秋招4×大厂offer,这一年我到底干了什么?6268
- 2... 我父母让我忍受所有工作上的欺辱3182
- 3... 【奖】别再瞎猜!26校招真实薪资大揭秘,帮你快速避坑!3158
- 4... 要不是有我,你们早就在一起了3134
- 5... 进大厂是因为老家找不到工作3042
- 6... 快手员工自费给+2庆生?太带派了烙铁2957
- 7... 月薪多少才能过上"体面生活"1989
- 8... 秋招收尾 0offer如何备战大厂春招1426
- 9... 携程你倒是动一动呀1416
- 10... 27届学院本两段实习后的职业规划再思考1339
正在热议
更多
# 我的职场社死时刻 #
5243次浏览 73人参与
# 你最满意的offer薪资是哪家公司? #
51290次浏览 260人参与
# 小红书开奖了 #
9203次浏览 62人参与
# 职场中那些令人叹为观止的八卦 #
5528次浏览 75人参与
# 聊聊你的职场新体验 #
293615次浏览 1807人参与
# 月薪多少能在一线城市生存 #
88272次浏览 598人参与
# 百度秋招 #
42517次浏览 357人参与
# 中科曙光工作体验 #
4462次浏览 22人参与
# 那些年,我收到的‘奇葩’回复 #
3095次浏览 34人参与
# 秋招吐槽大会 #
29327次浏览 282人参与
# 租房前辈的忠告 #
270434次浏览 7161人参与
# 秋招你经历过哪些无语的事 #
3623次浏览 50人参与
# XX请雇我工作 #
4354次浏览 62人参与
# 你秋招最后悔的选择 #
4670次浏览 48人参与
# 假如你的老板掉河里,你的工作能为他做什么 #
39093次浏览 400人参与
# 你找工作想离家近 or 离家远? #
4963次浏览 81人参与
# 交通银行工作体验 #
20289次浏览 68人参与
# 京东工作体验 #
21221次浏览 120人参与
# 哪些公司开始补录了 #
4393次浏览 67人参与
# 你父母给过你哪些不靠谱的职场建议? #
5659次浏览 84人参与
# 如何拒绝/反向PUA #
81385次浏览 365人参与
# 谈薪时HR压价该怎么应对 #
241497次浏览 3299人参与