Javascript 一些有趣的小地方

Js中遇到过一些好玩的地方

好玩的小地方

这几天准备实习的笔试,所以在看犀牛书,看的时候发现一些比较有意思的特性,索性就开一个帖子记录一下
+ 关于全局属性定义var变量声明

var foo = 1; //定义一个全局变量
    bar = 2; //没有用到var声明
this.baz = 3;//这里this指向全局
    //接下来好玩的事情就来了
    delete foo;//返回的是false
    delete bar;//返回的是true
    delete baz;//返回的是true

犀牛书上对此做出了一些解释:
使用var声明的全局的是声明一个全局变量,而全局变量不可删除
后面两个定义的是全局对象的一个属性,而属性是可以删除的

此外涉及到作用域链和ECMAScript规范,有兴趣的同学可以去深入理解一下,我是讲不透那些东西.

你可能感兴趣的:(js,javascript,全局变量)