首页 > 编程语言 > 详细

【学习笔记】JavaScript编码规范-声明提升

时间:2015-05-18 10:56:01      阅读:140      评论:0      收藏:0      [点我收藏+]
变量声明应该在作用域的顶端,但是赋值没有。
function example(){
var declaredButAssigned;
//如下输出 declaredButNotAssigned 未定义
console.log(declaredButNotAssigned)
declaredButNotAssigned = true
}


匿名表达式能提升他们的变量名,但不能提升函数赋值。

function example(){
console.log(anonymous); //未定义
anonymous();//类型错误
var anonymous = function(){
console.log('anonymous function expression');
}
}

命名函数表达式会提升变量名,而不是函数名或者函数体。

function example(){
console.log(AAA);// undefined
AAA();//TypeError AAA is not a function

BBB();//ReferenceError BBB is not define

var AAA = function BBB(){console.log('Hi~~')};

}

//当变量名同函数名称一样
function example2(){
console.log(AAA);// undefined
AAA();//TypeError
var AAA = function named(){console.log('Hello');};
}

函数声明会提升变量名和函数体

function example(){
AAA();
function AAA(){
console.log('Hi~~');
}
}


【学习笔记】JavaScript编码规范-声明提升

原文:http://blog.csdn.net/princeterence/article/details/45815369

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