in loop javascript 的解释
Explanation for in loop javascript
我无法理解 for in 循环的工作方式。
function createSimpleNode(name, options, text) {
var node = document.createElement(name);
for (var o in options) {
node.setAttribute(o, options[o]);
}
if (text) {
node.innerHTML = text;
}
return node;
}
这是一个for..in loop。它遍历对象的属性(options
,在本例中),并允许您在每次迭代中使用 []
运算符访问所述 属性。
在您的示例中,您迭代 options
个属性,并将它们全部设置为 node
.
的属性
For in loop 提供了一种使用每个值和键遍历对象或数组的方法。
它可以应用于 object
或 Array
。
对于对象
对于对象,它将对象中的每个 key
作为 ITER variable.
使用此变量,您可以从对象中获取相应的值。
var options = {a:1,b:2};
for (var key in options) {
console.log(o,options[key]);
}
将遍历 options
对象并打印每个 key
及其值。
a 1 //first key is a and options["a"] is 1
b 2 //first key is a and options["b"] is 2
对于数组
对于数组,它将数组中的每个 index
作为 ITER variable.
使用此变量,您可以从数组中获取相应的元素。
var options = ["a","b"];
for (var index in options) {
console.log(index,options[index]);
}
将迭代 options
数组并打印每个 index
和给定索引上的元素。输出将是:-
0 a //first index is a and options[0] is a
1 b //second index is a and options[1] is b
我无法理解 for in 循环的工作方式。
function createSimpleNode(name, options, text) {
var node = document.createElement(name);
for (var o in options) {
node.setAttribute(o, options[o]);
}
if (text) {
node.innerHTML = text;
}
return node;
}
这是一个for..in loop。它遍历对象的属性(options
,在本例中),并允许您在每次迭代中使用 []
运算符访问所述 属性。
在您的示例中,您迭代 options
个属性,并将它们全部设置为 node
.
For in loop 提供了一种使用每个值和键遍历对象或数组的方法。
它可以应用于 object
或 Array
。
对于对象
对于对象,它将对象中的每个 key
作为 ITER variable.
使用此变量,您可以从对象中获取相应的值。
var options = {a:1,b:2};
for (var key in options) {
console.log(o,options[key]);
}
将遍历 options
对象并打印每个 key
及其值。
a 1 //first key is a and options["a"] is 1
b 2 //first key is a and options["b"] is 2
对于数组
对于数组,它将数组中的每个 index
作为 ITER variable.
使用此变量,您可以从数组中获取相应的元素。
var options = ["a","b"];
for (var index in options) {
console.log(index,options[index]);
}
将迭代 options
数组并打印每个 index
和给定索引上的元素。输出将是:-
0 a //first index is a and options[0] is a
1 b //second index is a and options[1] is b