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 相关文章推荐
监控 url fragment变化的js代码
Apr 19 Javascript
基于jQuery的可用于选项卡及幻灯的切换插件
Mar 28 Javascript
JavaScript调用客户端的可执行文件(示例代码)
Nov 28 Javascript
JavaScript常用小技巧小结
Dec 29 Javascript
SWFObject基本用法实例分析
Jul 20 Javascript
javascript获取当前的时间戳的方法汇总
Jul 26 Javascript
通过Jquery.cookie.js实现展示浏览网页的历史记录超管用
Oct 23 Javascript
JS 动态判断PC和手机浏览器实现代码
Sep 21 Javascript
微信小程序 swiper组件详解及实例代码
Oct 25 Javascript
原生js仿淘宝网商品放大镜效果
Feb 28 Javascript
使用webpack-dev-server处理跨域请求的方法
Apr 18 Javascript
JavaScript中的this/call/apply/bind的使用及区别
Mar 06 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
Laravel最佳分割路由文件(routes.php)的方式
2016/08/04 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
2016/09/22 PHP
YII框架中搜索分页jQuery写法详解
2016/12/19 PHP
PHP面向对象程序设计OOP继承用法入门示例
2016/12/27 PHP
基于PHP的微信公众号的开发流程详解
2020/08/07 PHP
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
通过onmouseover选项卡实现img图片的变化
2014/02/12 Javascript
wap浏览自动跳转到wap页面的js代码
2014/05/17 Javascript
JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)
2016/02/26 Javascript
asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)
2016/05/05 Javascript
Jq通过td获取同行其它列td的方法
2016/10/05 Javascript
详解获取jq ul第一个li定位的四种解决方案
2016/11/23 Javascript
获取jqGrid中选择的行的数据
2016/11/30 Javascript
layer实现弹窗提交信息
2016/12/12 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
微信小程序 弹框和模态框实现代码
2017/03/10 Javascript
JavaScript实现QQ聊天消息展示和评论提交功能
2017/05/22 Javascript
angular select 默认值设置方法
2017/06/23 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
JS实现贪吃蛇游戏
2019/11/15 Javascript
Vue使用JSEncrypt实现rsa加密及挂载方法
2020/02/07 Javascript
vue实现简单计算商品价格
2020/09/14 Javascript
vue 中使用print.js导出pdf操作
2020/11/13 Javascript
[04:16]DOTA2英雄梦之声_第09期_斧王
2014/06/21 DOTA
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
python 整数越界问题详解
2019/06/27 Python
python识别图像并提取文字的实现方法
2019/06/28 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
2019/08/27 Python
详解Tensorflow不同版本要求与CUDA及CUDNN版本对应关系
2020/08/04 Python
详解Html5中video标签那些属性和方法
2019/07/01 HTML / CSS
谈一谈HTML5本地存储技术
2016/03/02 HTML / CSS
html5调用app分享功能示例(WebViewJavascriptBridge)
2018/03/21 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
汽车运用工程毕业生自荐信
2013/10/29 职场文书
2014年幼儿园植树节活动方案
2014/03/02 职场文书
体育运动口号
2014/06/09 职场文书