关于空语句的问题;
在js中,希望多条语句当做一条语句使用时,使用复合语句(常见的循环就是),而空语句恰恰相反。
空语句在日常开发中并不是很常见,但有时候缺少有用的
举个例子
var ary = [];
ary.length = 10;
for(var i = 0;i<ary.length;ary[i] = i++);//空语句
//执行结果 ary 初始化了10个值
但是在循环中{}虽不起眼但是有时候会犯致命错误
所以再要使用空语句的时候最好做个备注;告诉别人这个是有用的;
var 的声明跟function的申明在js执行的时候都会进行预解释,关于预解释详情请见这里写链接内容
注意 var 声明的变量和函数声明的是不可被delete删除的
关于for in 的可枚举对象及枚举顺序,
总结来说:除了所有非继承的“自有”属性以外的继承属性都往往是可枚举的,而且 可以按照他们定义的顺序进行枚举。
例子
var XiaoTuiMao = function () {
this.name = "XiaoTuiMao";
this.age = "20";
this.sex = "man";
}
var xiaoTuiMao1 = new XiaoTuiMao();
xiaoTuiMao1.height = "12px";
xiaoTuiMao1.skill = function () {
console.log("i can write javaScript");
}
for (var key in xiaoTuiMao1) {
console.log(key + " = " + xiaoTuiMao1[key])
}
/*
* 运行结果
name = XiaoTuiMao
age = 20
sex = man
height = 12px
skill = function (){
console.log("i can write javaScript");
}
* */
标签语句 即给循环或者判断添加一个标识符
例子
mainLoop:while(x>1){
x++;
break mainLoop;
}
代码执行一次就跳出这个循环