首页 > 编程语言 > 详细

javascript权威指南笔记--javascript语言核心(二)

时间:2015-11-10 19:13:55      阅读:231      评论:0      收藏:0      [点我收藏+]

1.函数作用域:在函数内声明的所有变量在函数体内始终是可见的。这意味着在变量声明之前甚至已经可用。

  *“声明提前”:javascript函数里声明的所有变量(但不涉及赋值)都被提前至函数的顶部。

  function test(o) {

    var i = 0;

    if(typeof(o) == "object") {

      var j = 0;

      for(var k=0; k<10; k++) {

        console.log(k);//0-9

      }

      console.log(k);//10

    }

    console.log(j);//0

  }

 

  var scope="global";

  function() {

    console.log(scope);//undefined

    var scope = "local";

    console.log(scope);//"local"

  }

  因为函数内变量scope的声明被提前,相当于:

  var scope = "global";

  function(){

    var scope;

    console.log(scope);

    scope = "local";

    console.log(scope);

  }

 

2.当使用var声明一个全局变量的时候,实际上定义了一个全局对象的属性,这个变量无法通过delete删除(该变量不可配置)。给一个未声明的变量赋值,javascript会自动创建一个全局变量,且该变量可配置(可删除)。

  var truevar = 1;//声明一个不可删除的全局变量

  fakevar = 2;//创建全局对象一个可删除的属性

  this.fakevar2 = 3;//同fakevar

  delete truevar;//false

  delete fakevar;//true

  delete fakevar2;//true

 

3.

 

javascript权威指南笔记--javascript语言核心(二)

原文:http://www.cnblogs.com/rellame/p/4953913.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!