Javascript - in 操作符
in操作符只作用于对象;用来判断某个属性是否属于某个对象;属性可以是对象的直接属性,也可以是通过prototype继承的属性
1. 对于一般对象的属性,必须用字符串来指定属性的名称
var tester = {name : "Alma", year : "1989"};"name" in tester ; //return true
2. 属性字符串在左边,右边必须是一个对象
var color1 = new String("green");"length" in color1 // returns true
var color2 = "coral";
"length" in color2 // generates an error (color2 is not a String object)
var testArray = ["name","year"];
length in testArray; // return true;
"length" in testArray ; // return true;
0 in testArray ; "1" in testArray; //return true;
2 in testArray ; "2" in testArray; //return false;
"name" in testArray ;//return false
var tester = {name : "Alma", year : "1989"};
"name" in tester ; //return true
"year" in tester ; //return true
tester.name = undefined;
delete tester.year;
"name" in tester ; //return true
"year" in tester ; //return false
1)for(variable in object){statements;}// variable 会依次取回object中的每个属性的字符串
var testObject = {name : "Alma", year : "1989"};
for(var property in testObject){console.log(testObject[property]);}//console log Alma , 1989
var testArray = ["name","year"];
for(var index in testArray){console.log(testArray[index]);}//console log name, year
其他参考:http://blog.youkuaiyun.com/slalx/article/details/5910587