JS for in 循环中的key ,value 详解。
<input type="radio" value="radio" id="radio"/>
<script>
function fn(){
this.aa = "obj1";
this.bb = "obj2";
}
var json = {"aa":"json1","bb":"json2"};
var obj = new fn();
var radio = document.getElementById("radio");
console.log("-------------json----------------");
for(var key in json){
console.log(key+"--"+json[key]);
}
console.log("-------------new obj----------------");
for(key in obj){
console.log(key+"--"+obj[key]);
}
console.log("-------------document----------------");
for(key in radio){
console.log(key+"--"+radio[key]);
}
</script>
从上面例子中可以看出:
1、 for in 可以遍历自己定义的json对象 ,和自己new的函数对象。
2、for in 不能遍历页面节点对象,但是把radio换成遍历document不会报错。
3、不建议用for in来遍历节点对象,因为不是所有节点对象属性都支持in运算符的访问。
for...in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。
实例
for...in 语句
如何使用 for...in 语句来遍历数组内的元素。
JavaScript for...in 语句
for...in 语句用于对数组或者对象的属性进行循环操作。
for ... in 循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作。
语法:
for (变量 in 对象)
{
在此执行代码
}
“变量”用来指定变量,指定的变量可以是数组元素,也可以是对象的属性。
实例:
使用 for ... in 循环遍历数组。
<html>
<body>
<script type="text/javascript">
var x
var mycars = new Array()
mycars[0] = "Saab"
mycars[1] = "Volvo"
mycars[2] = "BMW"
for (x in mycars)
{
document.write(mycars[x] + "<br />")
}
</script>
</body>
</html>