全局污染,重复声明与严格模式

  1. 什么是全局污染和重复声明?
function test () {
	web = 'hello world'
}

这种不声明就直接赋值的变量就会直接成为全局变量,这就是全局污染。
而使用var来声明的变量也都会成为window的对象,这就是window的全局对象污染,要通过let,const来声明。
重复声明就是使用var同一个变量名时不会报错,这样导致前面的变量被覆盖,而let,const会直接报错提示。
2. 全局污染有什么问题?
会导致有隐患,当在其他地方再次应用这个变量时,值就不好控制。
3. 怎么解决全局污染?
通过使用var ,let , const来声明变量,让私有变量不再是全局变量,
为避免忘记使用,可以通过开启严格模式来强制提醒

	"use strict"//直接扔到js里面就行

严格模式只会管理当前作用域自身以下的,哪怕是当前作用域自身以上的都约束不了,所以直接扔在开头就行。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值