变量的优先级以及垃圾回收机制(JS)

1.变量的优先级
先找本层的(本作用域)再逐级向外查找,例如:
var a=10;
function fn(){
var a=20;
console.log(a);//控制台打印20
}
console.log(a);//控制台打印10
因为都是找本级的变量,所以得到该答案
提升——参数——函数——变量
提升最低,最高的是变量,例如:
function fn(){
var a=10;
function a(){
return"111111111";
}
console.log(a);//控制台打印10
}
因为变量是最高级,所以打印变量那个a为10。
另外函数声明不看执行顺序的。
var a——局部a 2
window.a ——全局a 3
a——内部a也属于外部a 1
记住排序:先内部后外部。提升后(var a)不再属于内外部了,只属于内部了。如果碰到了局部a的情况,本属于内外部的情况只属于内部了。
2.垃圾回收机制
标记清除:最常用的垃圾回收机制,例如:
function fn(){
var a=“perfect”;
var a=“null”;
}
引用清除:最不常用的垃圾回收机制,例如:
var plus=document.getElementById(“plus”);
var count1=document.getElementById(“count”);
plus.οnclick=function(){
count1.count()+=1;
count1.count()-=1;
}
手动清除:把不用的变量或对象或函数赋值为null。
btn.οnclick=function(){
this.style.backgroundcolor=“red”;
this.style.backgroundcolor=null;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值