理解JavaScript中的严格模式‘use strict’_js基础

严格模式是ES5引入的特性,通过添加’use strict’启用,使代码更安全可靠。它禁止意外创建全局变量、函数参数重复等危险操作,提升代码质量。

理解javascript中的严格模式‘use strict’_js基础

在JavaScript中,‘use strict’ 是一种让代码在严格条件下运行的模式。启用严格模式后,JavaScript引擎会更严格地检查语法和执行行为,帮助开发者避免常见错误、防止某些“危险”的操作,并提升代码的安全性和可维护性。

什么是严格模式

严格模式是ES5引入的一种语言特性,通过在脚本或函数顶部添加字符串 ‘use strict’ 来启用。它改变了JavaScript的默认行为,让一些原本静默失败的问题抛出错误,同时禁用一些不推荐使用的语法。

例如,给未声明的变量赋值在非严格模式下会自动创建全局变量,但在严格模式下会直接报错:

– 非严格模式:
  username = “John”; // 不报错,隐式创建全局变量
– 严格模式:
  ‘use strict’;
  username = “John”; // 报错:username is not defined

如何启用严格模式

严格模式可以作用于整个脚本,也可以只作用于某个函数。

立即学习“Java免费学习笔记(深入)”;

全局启用:在脚本最顶部写 ‘use strict’,整个文件都进入严格模式。

‘use strict’;
function doSomething() {
  …
}

局部启用:在函数内部第一行使用,仅该函数启用严格模式。

function safeFunction() {
  ‘use strict’;
  …
}

建议在模块化开发或新项目中始终使用严格模式,确保代码更加可靠。

严格模式带来的主要变化

启用 ‘use strict’ 后,以下行为会被限制或禁止:

禁止意外创建全局变量:未声明就赋值会报错。
函数中的 this 指向 undefined:非严格模式下,普通函数的 this 指向 window(浏览器),严格模式下为 undefined。
禁止删除不可配置的属性:如 delete Object.prototype 会报错。
函数参数名不能重复:function(a, a) {} 在严格模式下非法。
禁用 with 语句:with 会导致作用域混乱,严格模式下直接语法错误。
eval 更安全:在严格模式中,eval 不会污染当前作用域。

为什么应该使用严格模式

严格模式不是强制要求,但它是良好编码实践的一部分。

它能帮你:

– 提前发现拼写错误或遗漏 var 声明的问题。
– 避免依赖 this 的默认绑定陷阱。
– 写出更清晰、更易调试的代码。
– 为未来 JavaScript 版本保留关键字做好准备(如 implements, interface 等在严格模式中是保留词)。

基本上就这些。虽然现代开发多用ES6+模块,默认处于严格模式,但理解 ‘use strict’ 的作用仍对掌握JS基础很重要。不复杂但容易忽略。

以上就是理解JavaScript中的严格模式‘use strict’_js基础的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1535276.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
在MVC架构JavaScript中实现事件监听器的最佳实践
上一篇 2025年12月21日 02:17:50
JavaScript中的迭代器与生成器详解_js ES6+
下一篇 2025年12月21日 02:18:15

相关推荐

  • 360极速浏览器怎么设置兼容模式 设置兼容模式方法

    360极速浏览器怎么设置兼容模式 设置兼容模式方法360极速浏览器怎么设置兼容模式 设置兼容模式方法360极速浏览器怎么设置兼容模式 设置兼容模式方法360极速浏览器怎么设置兼容模式 设置兼容模式方法

    1、找到桌面上的360浏览器图标,双击打开浏览器程序。 2、浏览器首页加载完成后,点击右上角的扩展菜单按钮,展开菜单列表。 3、在扩展菜单中选择“设置”选项,进入浏览器的配置界面。 4、在设置页面中,找到下方的*设置入口并点击,跳转至*设置界面。 5、在*设置界面中,点击页面中部的“内核切换设置”选…

    2026年9月4日 用户投稿
    000
  • Piti插件如何集成高清图库站点_Piti插件集成高清图库站点教程

    通过API、RSS或自定义代理可实现Piti插件对接高清图库。①使用图库API需获取密钥并配置服务信息;②通过RSS订阅导入公开资源,设置更新频率与解析规则;③无标准接口时搭建Node.js代理服务,解析网页数据为JSON供插件调用,提升素材获取效率。 如果您希望在使用Piti插件时能够快速访问和调…

    2026年9月4日
    000
  • win10系统彻底关闭windows自动更新的方法

    win10系统彻底关闭windows自动更新的方法win10系统彻底关闭windows自动更新的方法win10系统彻底关闭windows自动更新的方法win10系统彻底关闭windows自动更新的方法

    win10系统已经普遍被用户所接受并使用,有时候系统的升级补丁,并不一定是好事,有问题的补丁打上后,电脑往往会出现一些问题,所以工作的电脑为了一些不必要的麻烦,就可以将自动更新给彻底关闭了!操作过程:1、在桌面环境下,按下WIN+R调出运行窗口,并输入”services.msc&#822…

    2026年9月4日 用户投稿
    000
  • 如何在Java中实现对象缓存机制

    答案:Java对象缓存通过减少重复创建和远程调用提升性能,常用HashMap或ConcurrentHashMap实现简单缓存,结合TTL和LRU策略控制内存,推荐使用Guava Cache或Caffeine进行高级管理,并在分布式环境下采用Redis集成,配合Spring Cache注解简化开发,核…

    2026年9月4日
    000
  • 如何扩展WiFi覆盖范围 家庭网络扩展技巧

    调整路由器位置,将其置于家中中心区域,避开承重墙和干扰源;2. 若仍有死角,优先考虑部署mesh wifi系统,尤其适合大户型或多层住宅,实现无缝漫游;3. 预算有限且仅需覆盖小范围盲区时,可选用wifi扩展器,但需接受速度减半和切换延迟;4. 老房子或不便布线但电路质量较好的环境,可尝试电力线适配…

    2026年9月4日
    100
  • Win10锁屏壁纸在哪?Win10锁屏壁纸存放的位置

    Win10锁屏壁纸在哪?Win10锁屏壁纸存放的位置Win10锁屏壁纸在哪?Win10锁屏壁纸存放的位置Win10锁屏壁纸在哪?Win10锁屏壁纸存放的位置Win10锁屏壁纸在哪?Win10锁屏壁纸存放的位置

    win10无疑是目前非常流行的系统之一,但依然有不少朋友不清楚锁屏壁纸的具体存储位置。接下来就跟着小编的步伐,一起学习如何轻松定位win10锁屏壁纸所在的文件夹吧。 Win10锁屏壁纸存放位置解析 1、首先我们需要了解,win10系统默认将壁纸保存在“C:WindowsWebWallpaper”目录…

    2026年9月4日 用户投稿
    100
  • 168.31.1修改WiFi信号名称详细教程

    登录168.31.1路由器管理界面需确保设备已连接其wifi,浏览器输入168.31.1后输入用户名和密码(默认常为admin/admin或空),若遇安全警告可继续访问;2. 修改wifi名称需进入“无线设置”找到“ssid”或“无线网络名称”输入框,填入新名称(建议使用英文数字组合),保存后路由器…

    2026年9月4日
    000
  • VSCode调试路径怎么写_VSCode配置调试工作目录与路径映射教程

    答案是通过在launch.json中正确配置cwd和路径映射字段。具体来说,program指定入口文件,cwd设置程序运行时的工作目录以确保相对路径正确,sourceMapPathOverrides或pathMappings则解决本地与远程/容器内路径不一致问题,从而实现断点命中和源码映射。排查时需…

    2026年9月4日
    000
  • Win10系统开机提示服务器正在运行中怎么解决?

    Win10系统开机提示服务器正在运行中怎么解决?Win10系统开机提示服务器正在运行中怎么解决?Win10系统开机提示服务器正在运行中怎么解决?Win10系统开机提示服务器正在运行中怎么解决?

    最近有用户反映,windows 10 系统每次开机时都会弹出一个提示框,内容是“服务器正在运行中,由于其他程序正在使用中,此操作无法完成,请选择‘切换到’以激活正在运行的程序并解决问题。”用户需要反复点击“切换到”才能关闭该提示框,觉得非常麻烦。下面,小编为大家分享一种解决这一问题的方法。 方法一:…

    2026年9月4日 用户投稿
    100
  • ​​截屏电脑快捷键是什么?Win/Mac截图方法汇总​​

    windows系统截图快捷键包括:prtsc(全屏截图到剪贴板)、win + prtsc(全屏截图并保存文件)、alt + prtsc(活动窗口截图)、win + shift + s(区域/窗口/自由截图,推荐);2. mac系统截图快捷键包括:command + shift + 3(全屏截图到桌面…

    2026年9月4日
    000
  • 360浏览器不显示收藏夹怎么办 如何显示收藏夹

    360浏览器不显示收藏夹怎么办 如何显示收藏夹360浏览器不显示收藏夹怎么办 如何显示收藏夹360浏览器不显示收藏夹怎么办 如何显示收藏夹360浏览器不显示收藏夹怎么办 如何显示收藏夹

    在电脑上启动360浏览器,随后点击浏览器右上角的“更多”选项。 在弹出的菜单列表中,选择并点击“设置”选项。 此时将进入360浏览器的设置界面,在左侧导航栏中点击“基本设置”。 在右侧展示的设置页面中,找到“显示收藏夹”这一选项。 接着,请勾选“显示收藏夹”前面的方框。 此时即可看到360浏览器地址…

    2026年9月4日 用户投稿
    000
  • win10steam错误代码105怎么解决

    win10steam错误代码105怎么解决win10steam错误代码105怎么解决win10steam错误代码105怎么解决win10steam错误代码105怎么解决

    在steam这一平台中,部分用户遇到了错误代码105的情况,也就是windows 10系统下的steam出现错误代码105的问题。其实这是由于网页访问出现了异常,但服务器却能正常访问,那么该如何解决呢?下面跟随小编一起来看看具体的操作步骤吧。 如何解决Windows 10中的Steam错误代码105…

    2026年9月4日 用户投稿
    200
  • 谷歌浏览器无法切换输入法怎么解决?

    当您在使用谷歌浏览器时遇到无法正常切换输入法的问题,可能会对工作和日常使用造成不便。本文将为您详细介绍几种有效的解决方法,通过分步操作指引,帮助您从系统层面、浏览器设置以及扩展程序等多个角度进行排查和修复,从而恢复输入法的正常使用。 立即进入“免费看电影的软件☜☜☜☜☜点击进入”; 检查和重启输入法…

    2026年9月4日
    000
  • 谷歌浏览器怎么设置默认输入法?

    许多用户希望能在谷歌浏览器中设定一个固定的默认输入法,以提升输入效率。然而,需要明确的是,谷歌浏览器本身并未提供独立的默认输入法设置功能,它通常会直接继承和使用您操作系统的默认输入法。本文将为您讲解如何通过调整系统设置以及利用浏览器扩展程序,来实现对浏览器输入法的有效管理和控制。 立即进入“免费看电…

    2026年9月4日
    000
  • Celery实现定时任务crontab

    Celery实现定时任务crontabCelery实现定时任务crontabCelery实现定时任务crontabCelery实现定时任务crontab

    定时任务在开发中应用广泛,几乎所有开发人员都会接触到。实现定时任务的方法有很多,其中celery的定时任务功能强大且使用简便,只需安装celery即可。以下是使用celery实现定时任务的详细步骤。 一. 搭建Celery定时任务架构 在项目中合适的位置新建一个定时任务目录 celery_cront…

    2026年9月4日 用户投稿
    100
  • 两台win10电脑如何设置为共享文件夹

    两台win10电脑如何设置为共享文件夹两台win10电脑如何设置为共享文件夹两台win10电脑如何设置为共享文件夹两台win10电脑如何设置为共享文件夹

    我们常常会遇到两台电脑需要共享同一个文件夹的需求,但很多人并不清楚如何在windows 10系统中设置共享文件夹功能。针对这个问题,今天就为大家带来一份详细的步骤指南,让我们一起来学习吧! 如何在两台Windows 10电脑之间设置共享文件夹 第一步:打开“此电脑”。 第二步:右键点击你想共享的磁盘…

    2026年9月4日 用户投稿
    100
  • 浏览器输入法不显示了怎么办? 怎么设置浏览器输入法

    当您在浏览器中打字时,如果发现本应出现的输入法候选框或状态栏不见了,这无疑会影响您的输入体验。同时,您可能也想知道如何为浏览器指定一个特定的输入法。本文将针对这两个问题提供清晰的解决方案,首先会引导您一步步排查输入法不显示的原因,然后会详细解释浏览器输入法的设置原理与操作方法。 立即进入“免费看电影…

    2026年9月4日
    000
  • x浏览器怎么把网页保存为PDF_x浏览器网页打印并另存为PDF方法

    使用x浏览器打印功能可将网页保存为PDF。打开网页后点击菜单选择“打印”,设置目标为“保存为PDF”,点击保存并确认路径即可生成文件;或长按页面选择“保存为PDF”选项,勾选包含图片与样式后指定目录保存;若功能受限,可复制链接至WPS Office等第三方应用粘贴并导出为PDF完成转换。 如果您在浏…

    2026年9月4日
    100
  • win8怎么把应用固定到任务栏_win8应用固定到任务栏操作方法

    可通过开始屏幕、运行程序、桌面快捷方式或文件资源管理器将应用固定到任务栏。1、在开始屏幕搜索应用并右键选择“固定到任务栏”;2、运行程序后右键任务栏图标选择“将此程序固定到任务栏”;3、拖动桌面快捷方式至任务栏;4、在文件资源管理器中找到程序exe文件,右键选择“固定到任务栏”或拖拽至任务栏完成固定…

    2026年9月4日
    200
  • MySQL Scheduler Events带来的风险

    MySQL Scheduler Events带来的风险MySQL Scheduler Events带来的风险MySQL Scheduler Events带来的风险MySQL Scheduler Events带来的风险

    定时任务是开发和运维人员常用的工具,例如cron、job、schedule、events scheduler等,这些工具旨在自动化重复执行某些任务。在这里,我们将探讨mysql数据库内置的定时任务——events scheduler带来的风险案例。 一、现象描述 从库出现了数据不同步现象,具体错误如…

    2026年9月4日 用户投稿
    1000

发表回复

登录后才能评论
关注微信