js中for in的用法示例解析


Posted in Javascript onDecember 25, 2013

for(var i=0;i<len;i++)这样的用法一般都可以用for in 来替代。
例如:

var a = ["a","b","c"]; 
for(var el in a){ 
alert(a[el]); 
}

这个就是穷举出a中的所有元素,当然上面这个例子是可以用
for(var i=0,len=a.length;i<len;i++){ 
alert(a[i]); 
}

这种方式进行循环列出的,不过有时候这种方式就不一定奏效了。
例如:
var a = {"first":1,"second":2,"third":3};

这个时候就只能用for in来穷举了。

一个对象是否可以进行for in穷举,我们可以通过propertyIsEnumerable属性来判断,说明如下:
propertyIsEnumerable 属性
返回 Boolean 值,指出所指定的属性是否为一个对象的一部分以及该属性是否是可列举的。

object.propertyIsEnumerable(proName)

参数
object
必选项。一个对象。

proName
必选项。一个属性名称的字符串值。

说明
如果 proName 存在于 object 中且可以使用一个 For…In 循环穷举出来,那么 propertyIsEnumerable 属性返回 true。如果 object 不具有所指定的属性或者所指定的属性不是可列举的,那么 propertyIsEnumerable 属性返回 false。典型地,预定义的属性不是可列举的,而用户定义的属性总是可列举的。
propertyIsEnumerable 属性不考虑原型链中的对象。

Javascript 相关文章推荐
jQuery Ajax调用WCF服务详细教程
Mar 31 Javascript
Js的Array数组对象详解
Feb 22 Javascript
详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())
Aug 15 Javascript
javascript实现延时显示提示框效果
Jun 01 Javascript
使用watch监听路由变化和watch监听对象的实例
Feb 24 Javascript
详解async/await 异步应用的常用场景
May 13 Javascript
node后端服务保活的实现
Nov 10 Javascript
Vue组件基础用法详解
Feb 05 Javascript
vue实现学生信息管理系统
May 30 Javascript
vue 页面回退mounted函数不执行的解决方案
Jul 26 Javascript
一篇文章带你搞懂Vue虚拟Dom与diff算法
Aug 25 Javascript
javascript之Object.assign()的痛点分析
Mar 03 Javascript
在javascript中执行任意html代码的方法示例解读
Dec 25 #Javascript
jquery easyui combox一些实用的小方法
Dec 25 #Javascript
关闭浏览器时提示onbeforeunload事件
Dec 25 #Javascript
从QQ网站中提取的纯JS省市区三级联动菜单
Dec 25 #Javascript
优化javascript的执行效率一些方法总结
Dec 25 #Javascript
jquery fancybox ie6不显示关闭按钮的解决办法
Dec 25 #Javascript
JQuery插件fancybox无法在弹出层使用左右键的解决办法
Dec 25 #Javascript
You might like
PHP数组及条件,循环语句学习
2012/11/11 PHP
浅析php变量作用域的一些问题
2013/08/08 PHP
YII路径的用法总结
2014/07/09 PHP
phpExcel中文帮助手册之常用功能指南
2014/08/18 PHP
初识Laravel
2014/10/30 PHP
laravel 出现command not found问题的解决方案
2019/10/23 PHP
jQuery 版元素拖拽原型代码
2011/04/25 Javascript
JavaScript判断DOM何时加载完毕的技巧
2012/11/11 Javascript
jquery中的事件处理详细介绍
2013/06/24 Javascript
js监控IE火狐浏览器关闭、刷新、回退、前进事件
2014/07/23 Javascript
EasyUI实现二级页面的内容勾选的方法
2015/03/01 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
2015/09/12 Javascript
javascript特殊日历控件分享
2016/03/07 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
2017/04/18 Javascript
浅谈vue-lazyload实现的详细过程
2017/08/22 Javascript
Angularjs中的$apply及优化使用详解
2018/07/02 Javascript
vue+echarts+datav大屏数据展示及实现中国地图省市县下钻功能
2020/11/16 Javascript
python2.7的编码问题与解决方法
2016/10/04 Python
Python实现冒泡排序的简单应用示例
2017/12/11 Python
Python实现的json文件读取及中文乱码显示问题解决方法
2018/08/06 Python
15行Python代码实现网易云热门歌单实例教程
2019/03/10 Python
对python 调用类属性的方法详解
2019/07/02 Python
使用TFRecord存取多个数据案例
2020/02/17 Python
Canvas实现贝赛尔曲线轨迹动画的示例代码
2019/04/25 HTML / CSS
C语言开发工程师测试题
2016/12/20 面试题
linux面试题参考答案(7)
2012/10/29 面试题
国际政治个人自荐信范文
2013/11/26 职场文书
产品销售员岗位职责
2013/12/18 职场文书
报社实习生自荐信
2014/01/24 职场文书
实习生岗位职责
2014/04/12 职场文书
导游词之苏州盘门景区
2019/11/12 职场文书
祝福语集锦:送给毕业同学祝福语
2019/11/21 职场文书
CSS中em的正确打开方式详解
2021/04/08 HTML / CSS
springcloud之Feign超时问题的解决
2021/06/24 Java/Android
Spring Boot 实现 WebSocket
2022/04/30 Java/Android
winserver2019安装软件一直卡在应用程序正在为首次使用做准备
2022/06/10 Servers