一、for-in和for-of
1.for-in一般用来遍历对象,key是属性名,key是字符串类型
var obj = { name: '张三', age: 18, address: "四川省成都市" };
var arr = [true, 5555, '你好'];
var str = '我是字符串';
for(var key in obj){
console.log(key);//name age address
}
for(var key in arr){
console.log(key);//0 1 2
}
2.for-of 遍历对象报错,obj不可迭代
遍历可迭代的对象
数组和字符串用for-of遍历会显示每一个值
var obj = { name: '张三', age: 18, address: "四川省成都市" };
var arr = [true, 5555, '你好'];
var str = '我是字符串';
for(var item of arr){
console.log(item); //true 5555 你好
}
for(var item of str){
console.log(item); //我 是 字 符 串
}
3.区别
for-in和for-of的区别
for-in一般用来遍历对象,key是属性名,key是字符串类型
for-of一遍用来遍历可迭代的对象(array,string...),key是属性值
二、变量提升和函数提升
1.变量提升
//变量提升只提升变量名,不提升赋值
找到var声明的变量
var a;
执行代码
console.log