JavaScript中in关键字和for-in循环如何巧妙运用,实现代码简洁与高效?
- 内容介绍
- 文章标签
- 相关推荐
本文共计417个文字,预计阅读时间需要2分钟。
javascript
1.in 关键字 + 属性名 + in + 对象,
用于判断某个属性名是否在对象中存在与属性值等价的属性,返回 boolean 值 + 属性名 + 必须是字符串或数字 + var obj={ a: 1, b: 2 };console.log('a' in obj); // 返回 true,因为 obj 对象中存在 a 属性1.in关键字
属性名 in 对象,用来判断某个属性在对象中是否存在与其严格相等的属性名,返回boolean值
属性名必须是字符串或数字
var obj = { a : 1, b : 2 } console.log('a' in obj);//返回true,obj对象中存在a属性名 var arr = [12,11,10]; console.log(12 in arr);//返回false,原因arr数组中12,11,10三个值对应的属性名分别是0,1,2
2.for-in循环
for(var prop in obj){ //循环语句 }
取出对象的所有属性名,每次循环将其中一个属性名赋值给变量prop,运行循环体
利用该特点可以遍历数组:
var arr= ['abc','123',1,2,3]; for(var prop in arr){ console.log(prop); console.log(arr[prop]); }
使用for循环遍历数组和for-in循环遍历数组的区别:
遍历稀松数组var arr = [1,2,3,,,,,4];
for(var i = 0; i < arr.length; i++){};//没有值的地方会输出undefined
for(var prop in arr){};//没有值的地方不会输出
创建一个长度为100的数组,给数组的每一项赋值为'abc',使用for循环
var arr = new Array(100); for(var i = 0; i < arr.length; i++){ arr[i] = 'abc'; }
不能使用for-in循环
到此这篇关于JavaScript中的in关键字和for-in循环的文章就介绍到这了,更多相关js in for-in循环内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!
本文共计417个文字,预计阅读时间需要2分钟。
javascript
1.in 关键字 + 属性名 + in + 对象,
用于判断某个属性名是否在对象中存在与属性值等价的属性,返回 boolean 值 + 属性名 + 必须是字符串或数字 + var obj={ a: 1, b: 2 };console.log('a' in obj); // 返回 true,因为 obj 对象中存在 a 属性1.in关键字
属性名 in 对象,用来判断某个属性在对象中是否存在与其严格相等的属性名,返回boolean值
属性名必须是字符串或数字
var obj = { a : 1, b : 2 } console.log('a' in obj);//返回true,obj对象中存在a属性名 var arr = [12,11,10]; console.log(12 in arr);//返回false,原因arr数组中12,11,10三个值对应的属性名分别是0,1,2
2.for-in循环
for(var prop in obj){ //循环语句 }
取出对象的所有属性名,每次循环将其中一个属性名赋值给变量prop,运行循环体
利用该特点可以遍历数组:
var arr= ['abc','123',1,2,3]; for(var prop in arr){ console.log(prop); console.log(arr[prop]); }
使用for循环遍历数组和for-in循环遍历数组的区别:
遍历稀松数组var arr = [1,2,3,,,,,4];
for(var i = 0; i < arr.length; i++){};//没有值的地方会输出undefined
for(var prop in arr){};//没有值的地方不会输出
创建一个长度为100的数组,给数组的每一项赋值为'abc',使用for循环
var arr = new Array(100); for(var i = 0; i < arr.length; i++){ arr[i] = 'abc'; }
不能使用for-in循环
到此这篇关于JavaScript中的in关键字和for-in循环的文章就介绍到这了,更多相关js in for-in循环内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

