JavaScript基本类型
Undefined、 Null、Boolean、Number、String
JavaScript引用类型
Object、Array、Date、RegExp、Function
JavaScript变量提升
提前调用变量打印undefined
var a=1;
function test(){
console.log(a); // undefined
var a=1;
}
test();
注意局部变量和全局变量
c=5;
function test3(){
window.c=3;
console.log(c); // undefined (因为打印的是局部变量,变量提升)
var c;
console.log(window.c); // 3 (因为打印全局变量,有提前申明)
}
test3();
根据变量声明提升和变量搜索机制:
c=5;//声明一个全局变量c
function test3(){
var c;//变量声明提升,声明一个局部变量
window.c=3;//改变全局变量c的值
console.log(c);//由于此时的c是一个局部变量c,并且没有被赋值 c就是undefined
console.log(window.c);//此时的c就是一个全局变量c,也就是值为3
}
test3();
函数声明
重要特征就是函数声明提升,意思是在执行代码之前会先读取函数声明。这就意味着可以把函数声明放在调用它的语句后面。
网友评论