当前位置: 首页 > news >正文

“use strict“是什么? 使用它有什么优缺点?

 严格模式 - JavaScript | MDN

Javascript 严格模式详解 - 阮一峰的网络日志

1、"use strict" 是什么?

"use strict" :指定代码在严格条件下执行;

 

2、 使用 "use strict" 有什么优缺点?

 ① 严格模式通过抛出错误来消除了一些原有静默错误;

 ② 严格模式修复了一些导致 JavaScript引擎难以执行优化的缺陷;

有时候,相同的代码,严格模式可以比非严格模式下运行得更快

 ③ 严格模式禁用了在ECMAScript的未来版本中可能会定义的一些语法严格模式,其实就是更严格了设立"严格模式"的目的,主要有以下几个:

- 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;  

- 消除代码运行的一些不安全之处,保证代码运行的安全;
- 提高编译器效率,增加运行速度;
- 为未来新版本的Javascript做好铺垫。

3、常见的在严格模式下的现象

 ① 禁止this关键字指向全局对象

 ② 禁止在函数内部遍历调用栈

 ③ 全局变量必须显式声明

 ④ arguments不再追踪参数的变化

⑤ 不能使用未声明的变量。

(function(){"use strict"b=1 // Uncaught ReferenceError: b is not defined
})()

相关文章:

“use strict“是什么? 使用它有什么优缺点?

严格模式 - JavaScript | MDN Javascript 严格模式详解 - 阮一峰的网络日志 1、"use strict" 是什么? "use strict" :指定代码在严格条件下执行; 2、 使用 "use strict" 有什么优缺点? ① 严格模式通过抛出错…...

【C++】C++11常用特性总结

哥们哥们,把书读烂,困在爱里是笨蛋! 文章目录 一、统一的列表初始化1.统一的{}初始化2.std::initializer_list类型的初始化 二、简化声明的关键字1.decltype2.auto && nullptr 三、STL中的一些变化1.新增容器:array &…...

泛型——List 优于数组

数组与泛型有很大的不同: 1. 数组是协变的(covariant) 意思是:如果Sub是Super的子类型,则数组类型Sub[] 是数组类型Super[] 的子类型。 2. 泛型是不变的(invariant) 对于任何两种不同的类型Ty…...

JavaScript中对象的定义、引用和复制

JavaScript是一种广泛使用的脚本语言,其设计理念是面向对象的范式。在JavaScript中,对象就是一系列属性的集合,每个属性包含一个名称和一个值。属性的值可以是基本数据类型、对象类型或函数类型,这些类型的值相互之间有着不同的特…...

JavaScript通过函数异常处理来输入圆的半径,输出圆的面积的代码

以下为实现通过函数异常处理来输入圆的半径,输出圆的面积的代码和运行截图 目录 前言 一、通过函数异常处理来输入圆的半径,输出圆的面积 1.1 运行流程及思想 1.2 代码段 1.3 JavaScript语句代码 1.4 运行截图 前言 1.若有选择,您可以…...

Ubuntu 安装 Mysql

主要内容 本文主要是实现在虚拟机 Ubuntu 18.04 成功安装 MySQL 5.7,并实现远程访问功能,以 windows 下客户端访问虚拟机上的 mysql 数据库。 1. 切换至 root 用户 ,shell 终端指令均执行在 root 用户下 sudo su 2. 安装并设置 mysql 安…...

【五一创作】【Midjourney】Midjourney 连续性人物创作 ② ( 获取大图和 Seed 随机种子 | 通过 seed 随机种子生成类似图像 )

文章目录 一、获取大图和 Seed 随机种子二、通过 seed 种子生成类似图像 一、获取大图和 Seed 随机种子 注意 : 一定是使用 U 按钮 , 在生成的大图的基础上 , 添加 信封 表情 , 才能获取该大图的 Seed 种子编码 ; 在上一篇博客生成图像的基础上 , 点击 U3 获取第三张图的大图 ;…...

分布式事务 --- Seata事务模式、高可用

一、事务模式 1.1、XA模式 XA 规范 是 X/Open 组织定义的分布式事务处理(DTP,Distributed Transaction Processing)标准,XA 规范 描述了全局的TM与局部的RM之间的接口,几乎所有主流的数据库都对 XA 规范 提供了支持。…...

SQL(基础)

DDL: 数据定义语言 Definition,用来定义数据库对象(数据库、表、字段)CREATE、DROP、ALTER DML: 数据操作语言 Manipulation,用来对数据库表中的数据进行增删改 INSERT、UPDATE、DELETE 注意: DDL是改变表的结构 DML…...

「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验

「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验 一、前言1.1 本次实践介绍1.2 本次实践目的 二、准备环境资源2.1 部署前需准备工作2.2 本地环境规划 三、部署Docker环境3.1 安装Docker3.2 配置Docker镜像加速3.3 开启路由转发3.4 重启Docker服务 四、检查本地Doc…...

计算机操作系统实验:银行家算法模拟

目录 前言实验目的实验内容实验原理实验过程代码如下代码详解算法过程运行结果 总结 前言 本文是计算机操作系统实验的一部分,主要介绍了银行家算法的原理和实现。银行家算法是一种用于解决多个进程对多种资源的竞争和分配的算法,它可以避免死锁和资源浪…...

机器学习:多项式拟合分析中国温度变化与温室气体排放量的时序数据

文章目录 1、前言2、定义及公式3、案例代码1、数据解析2、绘制散点图3、多项式回归、拟合4、注意事项 1、前言 ​ 当分析数据时,如果我们找的不是直线或者超平面,而是一条曲线,那么就可以用多项式回归来分析和预测。 2、定义及公式 ​ 多项…...

一个 24 通道 100Msps 逻辑分析仪

这是一个创建非常便宜的逻辑分析仪的项目,但其功能可与昂贵的商业分析仪相媲美。该分析仪可以以每秒 1 亿个样本的最高速度对多达 24 个通道进行采样,并且可以通过单个通道中的极性变化或多达 16 个通道形成的模式来触发。 该项目不仅包含硬件&#xff0…...

使用Process Explorer和Dependency Walker排查C++程序中dll库动态加载失败问题

目录 1、exe主程序启动时的库加载流程说明 2、加载dll库两种方式 2.1、dll库的隐式引用...

网工Python:如何使用Netmiko的SCP函数进行文件传输?

在网络设备管理中,传输配置文件、镜像文件等是经常需要进行的操作。Netmiko是一个Python库,可用于与各种网络设备进行交互,提供了一些用于传输文件的函数,其中包括SCP(Secure Copy Protocol)函数。本文将介…...

题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和--不能完全通过,最好情况通过67.

原题链接: 题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和 https://www.dotcpp.com/oj/problem3166.html 致歉 害,首先深感抱歉,这道题还是没有找到很好的解决办法。目前最好情况就是67分。 这道题先这样跳过吧,当然以后还…...

ChatGPT- OpenAI 的 模型(Model) 介绍

ChatGPT的火爆程度大家都知道了,该章节我们来了解一下 ChatGPT 一个关键概念 - 模型(Model)。主要是为大家介绍一下在 OpenAI 中,究竟有哪些模型可以使用。 在后续的章节,我们会分单独的小章节逐一的为大家介绍各个不同模型的调用以及接口参…...

X 态及基于 VCS 的 X-Propagation 检测

🔥点击查看精选 IC 技能树系列文章🔥 🔥点击进入【芯片设计验证】社区,查看更多精彩内容🔥 📢 声明: 🥭 作者主页:【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN&#…...

数据库之事务隔离级别详解

事务隔离级别详解 一、事务的四大特性(ACID)1. 原子性(atomicity):2. 一致性(consistency):3. 隔离性(isolation):4. 持久性(durability): 二、事务的四种隔离级别1. 读未提交(Read uncommitted)&#xff1…...

守护进程、僵尸进程、孤儿进程

守护进程、僵尸进程、孤儿进程 守护进程(Daemon Process) 定义 守护进程又称Daemon进程(精灵进程),是Linux中的后台服务进程。 它的生命周期较长,通常独立于控制终端并且周期性地执行某种任务或者等待处…...

OpenClaw新手避坑:Qwen3-32B镜像部署的10个常见错误

OpenClaw新手避坑:Qwen3-32B镜像部署的10个常见错误 1. 为什么Qwen3-32B镜像部署容易踩坑? 第一次在本地部署Qwen3-32B镜像对接OpenClaw时,我天真地以为只要按照文档操作就能一帆风顺。结果从环境配置到服务启动,整整折腾了两天…...

Java程序员,如何从零开始学习AI?

文章为Java程序员提供了零学习大模型并实现涨薪的六阶段路线:掌握AI基础概念、用Java调用大模型API、基于Spring AI实现轻量级AI业务场景、在真实项目中落地、学习智能体进阶技能、将AI知识融入简历。强调应聘AI应用开发工程师而非大模型工程师,适合文本…...

如何快速解锁网易云音乐NCM格式:免费无损转换完整指南

如何快速解锁网易云音乐NCM格式:免费无损转换完整指南 【免费下载链接】ncmdump ncmdump - 网易云音乐NCM转换 项目地址: https://gitcode.com/gh_mirrors/ncmdu/ncmdump 你是否曾经从网易云音乐下载了喜爱的歌曲,却发现这些NCM格式文件无法在其他…...

OpenClaw跨平台控制:ollama-QwQ-32B同步操作多台设备的配置

OpenClaw跨平台控制:ollama-QwQ-32B同步操作多台设备的配置 1. 为什么需要跨设备自动化控制 上个月我家里添置了三台不同用途的设备:一台用于媒体处理的Mac mini、一台跑深度学习模型的Linux服务器,还有一台Windows主机专门处理文档。每次需…...

保姆级教程:用Java SpringBoot实现钉钉机器人自动回复@消息(附完整源码)

企业级钉钉机器人开发实战:SpringBoot实现智能消息处理 最近在帮一家电商公司搭建内部工单系统时,遇到了一个典型需求:当员工在钉钉群里机器人提交问题时,需要自动识别用户身份并回复处理进度。这个看似简单的功能,在…...

Flux.1文生图大模型本地部署实战:从零到一的ComfyUI配置指南

1. 为什么选择Flux.1和ComfyUI组合 如果你正在寻找一个既强大又灵活的AI绘画解决方案,Flux.1和ComfyUI的组合绝对值得考虑。Flux.1作为目前最大的开源文本到图像模型之一,拥有12B参数的强大生成能力,而ComfyUI则以其模块化的工作流设计著称&a…...

BiliTools:革新性开源B站资源下载工具,零基础也能轻松掌握的跨平台解决方案

BiliTools:革新性开源B站资源下载工具,零基础也能轻松掌握的跨平台解决方案 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持视频、音乐、番剧、课程下载……持续更新 项目地址: https://gitcode…...

LongCat-Image-Editn效果展示:建筑效果图‘添加中文标牌+调整光照’案例

LongCat-Image-Edit效果展示:建筑效果图‘添加中文标牌调整光照’案例 1. 开篇:当AI学会“装修”建筑效果图 想象一下,你手里有一张刚出炉的建筑效果图,客户突然提出两个新需求:“能不能给大楼加上我们公司的中文招牌…...

Ring-1T-FP8开源:万亿参数AI推理新突破

Ring-1T-FP8开源:万亿参数AI推理新突破 【免费下载链接】Ring-1T-FP8 项目地址: https://ai.gitcode.com/hf_mirrors/inclusionAI/Ring-1T-FP8 导语:近日,开源社区迎来重大突破——万亿参数级大语言模型Ring-1T-FP8正式开源&#xff…...

3步掌握CodeHub:Windows平台GitHub客户端的终极使用指南

3步掌握CodeHub:Windows平台GitHub客户端的终极使用指南 【免费下载链接】CodeHub A UWP GitHub Client 项目地址: https://gitcode.com/gh_mirrors/code/CodeHub 想要在Windows平台上优雅地管理GitHub项目吗?CodeHub作为一款专为Windows 10设计…...