JS中for...in 语句用于对数组或者对象的属性进行循环操作吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中for...in 语句用于对数组或者对象的属性进行循环操作吗?相关的知识,希望对你有一定的参考价值。
是的for(variable in object)
object为null、undefined,javascript会跳过循环执行后面的代码,在ECMAScript3中可能会抛出类型错误异常
object为原始值,会转换为与之对应的包装对象
若为对象类型,javascript会依次枚举对象的属性来执行循环,在每次循环前,javascript都会先计算variable表达式的值,并将属性名(一个字符串)赋值给它
例子
var obj = type:'human',history:'300000years',use:'example';
var arr2 = [],i=0;
for(arr2[i++] in obj) /*empty*/ ;
console.log(arr2); //["type","history","use"] 参考技术A 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>
js的for衍生对象
转自博客http://www.cnblogs.com/abcdecsf/p/9944451.html
JavaScript for/in 语句
作用:for/in 语句用于遍历循环对象属性。
循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作。
例子:
循环对象属性:
1 var person = {fname:"A", lname:"B", age:20};
2
3 var text = "";
4 var x;
5 for (x in person) {
6 text += person[x];
7 }
text 输出结果为:
A B 20
JavaScript for/of 语句
作用:ES6中的for of可以相较于for更简单地正确的遍历数组
例子:
1 Array.prototype.method=function(){
2 console.log(this.length);
3 }
4 var myArray=[1,2,4,5,6,7]
5 myArray.name="数组";
6 for (var value of myArray) {
7 console.log(value);
8 }
JavaScript for each...in 语句
作用:一些对象的内置属性是无法被遍历到的,包括所有的内置方法,例如String对象的indexof方法.不过,大部分的用户自定义属性都是可遍历的。
for each...in使用一个变量迭代一个对象的所有属性值,对于每一个属性值,有一个指定的语句块被执行.
例子:
1 var sum = 0;
2 var obj = {prop1: 5, prop2: 13, prop3: 8};
3
4 for each (var item in obj) {
5 sum += item;
6 }
7
8 print(sum); // 输出"26",也就是5+13+8的值
以上是关于JS中for...in 语句用于对数组或者对象的属性进行循环操作吗?的主要内容,如果未能解决你的问题,请参考以下文章