window.location.assign和window.location.href区别

window.location.assign(url) 和 window.location.href=url 实现功能是一样的,都是跳转到网址,只是用法稍微不同。

最大的不同是,assign 会添加记录到浏览历史,点击后退可以返回之前页面。

继续阅读“window.location.assign和window.location.href区别”

JS闭包的两个例子

之前一篇文章详解js闭包讲了什么是JS闭包,以及JS闭包的优缺点,本文再看两个JS闭包的例子,进一步理解JS闭包的作用域和特性。

继续阅读“JS闭包的两个例子”

js闭包之作用域链

在理解闭包以前.最好能先理解一下作用域链的含义,简单来说,作用域链就是函数在定义的时候创建的,用于寻找使用到的变量的值的一个索引,而他内部的规则是,把函数自身的本地变量放在最前面,把自身的父级函数中的变量放在其次,把再高一级函数中的变量放在更后面,以此类推直至全局对象为止.当函数中需要查询一个变量的值的时候,js解释器会去作用域链去查找,从最前面的本地变量中先找,如果没有找到对应的变量,则到下一级的链上找,一旦找到了变量,则不再继续.如果找到最后也没找到需要的变量,则解释器返回undefined.