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 相关文章推荐
javascript中的window.location.search方法简介
Sep 02 Javascript
js获取数组的最后一个元素
Apr 14 Javascript
AngularJS进行性能调优的7个建议
Dec 28 Javascript
理解js对象继承的N种模式
Jan 25 Javascript
javascript实现在网页中运行本地程序的方法
Feb 03 Javascript
javascript实现根据汉字获取简拼
Sep 25 Javascript
不得不看之JavaScript构造函数及new运算符
Aug 21 Javascript
Grunt针对静态文件的压缩,版本控制打包的实例讲解
Sep 29 Javascript
JavaScript继承定义与用法实践分析
May 28 Javascript
记录一次完整的react hooks实践
Mar 11 Javascript
浅谈vue 锚点指令v-anchor的使用
Nov 13 Javascript
Vue使用Proxy代理后仍无法生效的解决
Nov 13 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
第4章 数据处理-php正则表达式-郑阿奇(续)
2011/07/04 PHP
php session劫持和防范的方法
2013/11/12 PHP
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
一组PHP可逆加密解密算法实例代码
2014/01/21 PHP
php数组索引的Key加引号和不加引号的区别
2014/08/19 PHP
php打印输出棋盘的实现方法
2014/12/23 PHP
PHP遍历数组的三种方法及效率对比分析
2015/02/12 PHP
php函数重载的替代方法--伪重载详解
2015/05/08 PHP
php生成mysql的数据字典
2016/07/07 PHP
php版微信开发之接收消息,自动判断及回复相应消息的方法
2016/09/23 PHP
Laravel5中防止XSS跨站攻击的方法
2016/10/10 PHP
分享一个自己写的table表格排序js插件(高效简洁)
2011/10/29 Javascript
js网页中的(运行代码)功能实现思路
2013/02/04 Javascript
使用jquery实现div的tab切换实例代码
2013/05/27 Javascript
浅析JavaScript中的同名标识符优先级
2013/12/06 Javascript
jQuery siblings()用法实例详解
2016/04/26 Javascript
Angular多选、全选、批量选择操作实例代码
2017/03/10 Javascript
jQuery插件FusionCharts绘制的3D双柱状图效果示例【附demo源码】
2017/04/20 jQuery
Three.js实现绘制字体模型示例代码
2017/09/26 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
vue中动态绑定表单元素的属性方法
2018/02/23 Javascript
jQuery 实现批量提交表格多行数据的方法
2018/08/09 jQuery
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
webpack4从0搭建组件库的实现
2020/11/29 Javascript
Python开发微信公众平台的方法详解【基于weixin-knife】
2017/07/08 Python
Python文件如何引入?详解引入Python文件步骤
2018/12/10 Python
利用css3如何设置没有上下边的列表间隔线
2017/07/03 HTML / CSS
移动web模拟客户端实现多方框输入密码效果【附代码】
2016/03/25 HTML / CSS
带薪年假请假条
2014/02/04 职场文书
致接力运动员广播稿
2014/02/17 职场文书
《记金华的双龙洞》教学反思
2014/04/19 职场文书
依法行政工作汇报材料
2014/10/28 职场文书
七年级上册语文教学计划
2015/01/22 职场文书
挂职个人工作总结
2015/03/05 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL
一行Python命令实现批量加水印
2022/04/07 Python