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

JavaScript进阶(三)

文章目录

  • 二.严格模式
  • 三.闭包

二.严格模式

1.ES5的严格模式是采用具有限制性JavaScript变体的一种方式,就是在严格的条件下运行JS代码。
2.严格模式的变化
1)变量的规定
①在正常模式下,如果一个变量没有声明就直接赋值,默认是全局变量,严格模式禁止这种用法,变量都必须先用var声明,然后再使用。
②严禁删除已经声明过的变量。
2)this指向问题
①正常模式下全局作用域函数中的this指向window对象,严格模式下全局作用域中函数中的this是undefined。
②以前构造函数不加new也可以调用,this指向全局对象;严格模式下如果不加new调用,this会报错,new实例化的构造函数指向创建的对象实例。
③定时器this指向还是window。
④事件对象还是指向调用者。
3)函数变化
①严格模式下函数不能有重名
②函数必须声明在顶层,新版本的JavaScript引入“块级作用域”,为了与新版本接轨,不允许在非函数的代码块中声明函数。

三.闭包

1.概念:闭包就是有权访问另一个函数作用域中变量的函数。也就是一个作用域可以访问另外一个函数内部的局部变量,被访问变量所在的函数就是闭包。
2.作用:延伸了变量的作用范围

相关文章:

  • Spring常见问题解决 - Required request body is missing
  • C++学习笔记——02
  • CREO图文教程:三维设计案例之风扇叶制作图文教程之详细攻略
  • 【写在中秋时刻】硬件冷钱包、软件冷钱包、多签(Multisig)钱包多视角比较分析
  • Java项目:SSM农业信息管理系统
  • Web安全—Web漏扫工具NetSparker安装与使用
  • 【Git】Git的使用与学习
  • centos7之service文件详解及systemctl命令使用
  • ROS1云课→13三维可视化工具rviz
  • 数据结构--排序
  • 智能控制理论及应用笔记
  • 智源AI日报(2022-08-31):Domino首席数据科学家:MLOps 成熟度的七个阶段
  • PeerConnection中对SDP的认证过程
  • Xcode定期清理文件
  • 一种基于深度学习的织物缺陷检测方法
  • [ JavaScript ] 数据结构与算法 —— 链表
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • ECMAScript6(0):ES6简明参考手册
  • Markdown 语法简单说明
  • Vue.js 移动端适配之 vw 解决方案
  • Vue2 SSR 的优化之旅
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 你真的知道 == 和 equals 的区别吗?
  • 如何设计一个微型分布式架构?
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 如何优雅地使用 Sublime Text
  • 实现菜单下拉伸展折叠效果demo
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 中文输入法与React文本输入框的问题与解决方案
  • MPAndroidChart 教程:Y轴 YAxis
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • (1) caustics\
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (附源码)计算机毕业设计ssm电影分享网站
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (算法)Game
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (中等) HDU 4370 0 or 1,建模+Dijkstra。
  • (转)Sublime Text3配置Lua运行环境
  • (转载)hibernate缓存
  • 、写入Shellcode到注册表上线
  • .net 桌面开发 运行一阵子就自动关闭_聊城旋转门家用价格大约是多少,全自动旋转门,期待合作...
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
  • .NET的数据绑定
  • .Net组件程序设计之线程、并发管理(一)
  • @Autowired和@Resource的区别
  • @cacheable 是否缓存成功_Spring Cache缓存注解
  • @kafkalistener消费不到消息_消息队列对战之RabbitMq 大战 kafka
  • @四年级家长,这条香港优才计划+华侨生联考捷径,一定要看!
  • [Android]创建TabBar
  • [bzoj 3124][sdoi 2013 省选] 直径