2
A
回答
3
字符串中for/in循环的含义是什么?
如果将字符串视为字符数组,则循环遍历字符串的目的是遍历每个字符。
在JavaScript中for..in
循环将返回对象或数组中的键,所以你看到的是数组索引。一个更有用的格式应该是:
var str,
item;
str = "abc";
for (item in str) {
console.log(str[item]);
}
将输出'a'
,'b'
和'c'
。
这是甚至有效的JavaScript代码吗?
现在是,但过去有问题。
注意,对于旧的浏览器,数组的索引,不支持对字符串,所以向后兼容的方式在一个字符串中的字符迭代是:
var str,
i;
str = "abc";
for (i = 0; i < str.length; i++) {
console.log(str.charAt(i));
}
1
它。
您所看到的是字符串中的索引/属性名称。 像"abc"[0]
那样对字符串进行索引会导致a
。
您也可以使用属性名称索引对象。
var x = {
foo: "hi"
};
console.log(x["foo"]);
循环只是通过对象的所有成员。
1
它基本上是一个遍历每个项目的foreach循环。在这种情况下,字符串“abc”它看起来就像是打印出字符串位置,但是这可以用于对象来遍历它们。
1
这是有效的代码。 A for
in
JavaScript中的循环将迭代对象中的一组键。在的情况下,这些键包括每个字符的索引以及添加到字符串原型的任何附加属性。
作为for in
的结果找到这些原型属性(特别是如果对象已被修改),通常建议使用一种机制来跳过它们。在这种情况下,你可以使用
if(!"abc".hasOwnProperty(item))continue;
如果你使用索引,这里命名item
,你可以单独访问字符下方观察
for (item in "abc") {
console.log(item);
//this will log the letters one at a time
console.log("abc"[item]);
}
1
for/in
迭代对象的枚举的属性。
由于JS允许使用数组语法(如str[1]
)读取字符串的字符,因此它会将每个索引的数字属性公开到该字符串中,这就是您的0, 1, 2
输出的来源。这些是字符串对象的枚举属性。
1
它正在记录字符串中的字母索引。
此输出的字母:
string = "abc"; for(var i = 0; i < string.length; i++){ console.log(string[i]); }
输出:
a
b
c
相关问题
- 1. 为什么JS forin循环将(循环)对象存储为(字符串化)键,而不是对象?
- 2. 循环的含义是什么?
- 3. Ruby中“$”字符的含义是什么?
- 4. %s在字符串文字中的含义是什么?
- 5. 字符串文字之前符号“@”的含义是什么?
- 6. 什么是循环多行字符串中行的好方法?
- 7. 语法[/]在C#字符串中的含义是什么
- 8. SQL Server连接字符串中“Initial Catalog”的含义是什么?
- 9. var,_ =在Python中的含义是什么?字符串连接?
- 10. 什么是字符串在数组中的含义python
- 11. C(字符串)在C++中的含义是什么?
- 12. 在C中,“字符串”[4]的意思和含义是什么?
- 13. MALC在用户代理字符串中的含义是什么?
- 14. 字符串在numpy.r_中的含义是什么?
- 15. 检查字符串是否包含for循环的字符?
- 16. \ x1a字符的含义是什么
- 17. Bash循环包含'*'的字符串
- 18. for循环中这条线的含义是什么?
- 19. (%*)在批次循环中的含义是什么?
- 20. 字符串十六进制格式的含义是什么?
- 21. 字符串在javascript之前的含义是什么
- 22. “@”在字符串之前的含义是什么?
- 23. Forin环路 - 的iOS
- 24. {0}在字符串文字中的含义是什么,例如在Console.WriteLine中?
- 25. Python中“|”符号的含义是什么?
- 26. Swift中'@'符号的含义是什么?
- 27. jQuery中符号$的含义是什么?
- 28. TCL中“@”符号的含义是什么?
- 29. PHP中符号的含义是什么
- 30. cshtml中'@'符号的含义是什么?