深入浅析JavaScript中的in关键字和for-in循环


Posted in Javascript onApril 20, 2020

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循环内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
用js实现的检测浏览器和系统的函数
Apr 09 Javascript
extJs 常用到的增,删,改,查操作代码
Dec 28 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
Jan 08 Javascript
关于jQuery UI 使用心得及技巧
Oct 10 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
Jun 28 Javascript
js定时器怎么写?就是在特定时间执行某段程序
Oct 11 Javascript
javascript 3d 逐侦产品展示(核心精简)
Mar 26 Javascript
jquery如何把数组变为字符串传到服务端并处理
Apr 30 Javascript
javascript html5摇一摇功能的实现
Apr 19 Javascript
Vue项目分环境打包的实现步骤
Apr 02 Javascript
详解JavaScript中new操作符的解析和实现
Sep 04 Javascript
token 机制和实现方式
Dec 15 Javascript
vue实现购物车功能(商品分类)
Apr 20 #Javascript
vue实现淘宝购物车功能
Apr 20 #Javascript
javascript利用键盘控制小方块的移动
Apr 20 #Javascript
vue实现购物车的监听
Apr 20 #Javascript
详解微信小程序工程化探索之webpack实战
Apr 20 #Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
Apr 20 #Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
Apr 20 #Javascript
You might like
php网上商城购物车设计代码分享
2012/02/15 PHP
php 参数过滤、数据过滤详解
2015/10/26 PHP
ThinkPHP实现简单登陆功能
2017/04/28 PHP
php判断IP地址是否在多个IP段内
2020/08/18 PHP
js宝典学习笔记(上)
2007/01/10 Javascript
jQuery Lightbox 图片展示插件使用说明
2010/04/25 Javascript
js数组的基本用法及数组根据下标(数值或字符)移除元素
2013/10/20 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
2014/04/04 Javascript
js实现图片旋转的三种方法
2014/04/10 Javascript
CSS图片响应式 垂直水平居中
2015/08/14 Javascript
jQuery实现带有洗牌效果的动画分页实例
2015/08/31 Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
2015/11/17 Javascript
Kendo Grid editing 自定义验证报错提示的解决方法
2016/11/18 Javascript
详解Angular2 之 结构型指令
2017/06/21 Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
2017/10/25 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
js动态设置select下拉菜单的默认选中项实例
2018/08/21 Javascript
说说如何在Vue.js中实现数字输入组件的方法
2019/01/08 Javascript
使用Angular Cli如何创建Angular私有库详解
2019/01/30 Javascript
JQuery的加载和选择器用法简单示例
2019/05/13 jQuery
微信小程序云开发之云函数详解
2019/05/16 Javascript
vue与django集成打包的实现方法
2019/11/11 Javascript
Vue多选列表组件深入详解
2021/03/02 Vue.js
[01:05]DOTA2完美大师赛趣味视频之选手教你打职业
2017/11/23 DOTA
Python3基础之基本数据类型概述
2014/08/13 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
Python版名片管理系统
2018/11/30 Python
Python简单I/O操作示例
2019/03/18 Python
django-rest-framework解析请求参数过程详解
2019/07/18 Python
DBA数据库管理员JAVA程序员架构师必看
2016/02/07 面试题
设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
2014/12/30 面试题
毕业生物理教师求职信
2013/10/17 职场文书
群众路线教育实践活动方案
2014/10/31 职场文书
2014年校长工作总结
2014/12/11 职场文书
个人工作能力自我评价
2015/03/05 职场文书
2016年寒假学习心得体会
2015/10/09 职场文书