@brizer
2016-03-12T10:43:32.000000Z
字数 539
阅读 1049
javascript中的switch语句的行为和在其他语言中是不一样的:switch语句中可以使用任意类型值,任何表达式都可合法地用于case从句。但是在其他语言中则必须使用原始值和常量。
很多人写的switch像java风格的缩进:
switch(condition) {case "first"://codebreak;case "second"://codebreak;default://code}
但是Crockford和Dojo编程规范则提倡另一种写法:
switch(condition) {case "first"://codebreak;case "second"://codebreak;default://code}
for-in循环有可能会遍历原型链。所以最好使用hasOwnProperty()方法来过滤:
var prop;for (prop in object) {if(object.hasOwnProperty(prop)){//code}}
还有一点需要注意,for-in是用来对实例对象和原型链中的键(key)做遍历的,而不是用来遍历包含数字索引的数组的。因为for-in最好不要用于数组。
