首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

JS遍历属性

枚举属性 对象属性可枚举,表示该属性的值不可修改,可认为该属性是常量。 如何定义不可枚举的属性?...name: 'jack', age:23} Object.defineProperty(obj, 'id', {value : '123', enumerable : false }); 获取对象所有可枚举属性...使用Object.keys(obj)可以获取对象obj自身所包含的所有可枚举属性。...Object.getOwnPropertyNames(obj) ;//获得对象上所有的“实例属性” 判断对象是否拥有实例属性 obj.hasOwnProperty(‘id’); //只要该对象obj拥有属性id, 无论id是否可枚举...,都返回true for(var i in obj){ } // 表示访问对象所有可枚举的属性,包括可枚举的实例属性和可枚举的原型对象的属性 “name” in obj // 通过对象能够访问给定属性名时返回

9.5K20

js中map遍历数组对象_js遍历数组

forEach()和map()都是遍历数组的方法,用法类似,但是还是有很大区别: 相同点:       1.都是循环遍历数组中的每一项;       2.在遍历中执行匿名函数都可以接收三个参数,分别为...:遍历过程的每一项、遍历序号(索引值)、原数组;       3.执行的匿名函数中 的this都指向window。...不同点:       map():       根据遍历执行的匿名函数,对于原数组中的每个值产生一个对应的值,并返回一个新的数组,存在一个映射关系,并且不会改变原数组,不会对空数组进行检测。...arr.forEach(function(i,index,arr){ sum += i; console.log("sum的值为:",sum); }) //执行5次,最终结果 10 ** js...中 map 遍历数组 ** map 方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。

19.4K30

Js遍历对象总结

Js遍历对象总结 Js遍历对象的方法主要有for in、Object.keys()、Object.getOwnPropertyNames()、Reflect.ownKeys()、Object.getOwnPropertySymbols...for in for in语句以任意顺序迭代对象的可枚举属性,包括原型链上的可枚举属性,不包括Symbol属性。...Object.defineProperty(obj, "d", {value:"1111111", enumerable:false}); // 在obj上增加一个不可枚举属性 console.log...*/ Object.keys Object.keys()方法会返回一个由一个指定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用for...in循环遍历该对象时返回的顺序一致。...类似的,Object.entries()方法返回一个指定对象自身可枚举属性的键值对数组,Object.values()方法返回一个指定对象自身的所有可枚举属性值的数组。

6.7K31

js中对数组进行遍历都有哪些方法_js遍历json对象

遍历有如下几种方式 数组方法 map forEach filter find findIndex every some reduce reduceRight 其他方法 for for in for...[“子项0”, “子项1”, “子项2”] console.log(filterResult); [“子项0”] 缺陷 可以使用return,但是不能使用break和continue find 核心 遍历数组...; console.log(reduceRightResult);//结果: 10 缺陷 可以使用return,但是不能使用break和continue 其他方法 for循环 核心 使用临时变量,并且遍历的是...; i < testArr.length; i++) {if(i === 1) {return; } console.log(testArr[i]); }//结果为什么也没有 for in循环 核心 遍历的是...return for(let i intestArr){if(i === 1) {return; } console.log(testArr[i]); }//结果为什么也没有 for of循环 核心 遍历的是

7.9K20

JS不靠谱系列之枚举出时间段和对应的分钟数(新增遍历功能)

前言 今天遇到一个需求,是把选择时间段转为分钟数提交上去的; 所以想手动写个数组一一映射,提交的时候遍历下匹配的值提交....比如 : 00:00 为 0分钟或者1440分钟; 00:10为30分钟; 具体看下面的 2017-8-17 : 加入遍历功能呢 参数: value : string || Array type :...写一个时间段选择的组件,当然这里只是单纯拿值 ---- // 枚举出分钟 export function enumTime(step=30) { let temp = []; // 储存结果集...+ ":" + minute, value: step * i }); } } return temp; console.log(temp); } 遍历功能...---- Q: JS时间分段 给定一个时间段和步长,枚举该时间段内步长的划分 例如:时间段3:00-5:00,步长为20分钟 那么返回的数组为 ['3:00-3:20', '3:20-3:40'

1.1K20

js 实现层序遍历

= [] // 初始化当前层级 let countNum = queue.length // 当前层级的节点数 while(countNum--){ // 遍历当前层级的节点数...push(node.val) // 推入每层的节点值 node.left && queue.push(node.left) // 将当前层级的节点的左右节点推入栈中,供下一层级遍历...node.right && queue.push(node.right)// 将当前层级的节点的左右节点推入栈中,供下一层级遍历 } count...++ // 层级+1 } return res }; 基本逻辑: 层序遍历使用的时广度优先遍历,使用队列存取,先进先出,与广度优先遍历不同的是,广度优先遍历返回一个一维数组,不分层级...,层序遍历分层级,返回多维数组,在每次遍历的过程中,把整层节点都处理完之后,再处理下一层 1.

3K20

Js遍历数组总结

Js遍历数组总结 遍历数组的主要方法为for、forEach、map、for in、for of。...thisArg 可选 当执行回调函数callback时,用作this的值 注意如果使用箭头函数表达式来传入callback,thisArg参数会被忽略,因为箭头函数在词法上绑定了this值 注意如果想在遍历执行完之前结束遍历...,主要是用来循环遍历对象的属性 // 遍历数组 var arr = [1,2,3,4,5]; for(item in arr){ console.log(arr[item]); } // 1...2 3 4 5 // 数组遍历时需注意,数组索引只是具有整数名称的枚举属性,并且与通用对象属性相同。...// for ... in循环语句将返回所有可枚举属性,包括非整数类型的名称和继承的那些。 // 因为迭代的顺序是依赖于执行环境的,所以数组遍历不一定按次序访问元素。

4.3K20

JS中愉快地使用枚举

背景 在JS中并没有原生枚举的实现,可以通过下面几种方法来模拟类似的操作。...使用变量储存枚举值 这次进阶了一下,虽然代码啰嗦了,但是犯错概率会大大降低: const Days = Object.freeze({ Mon: 'Mon', Tue: 'Tue',...使用数字 这也是老生常谈的内容了,好多语言在没有枚举类型的时候都喜欢这么干: const Days = Object.freeze({ Mon: 0, Tue: 1, Wed:...JS定义枚举集合时的优化 可以尝试下列几种方法,只需要写出来枚举的名字,通过几个数组的API进行赋值操作。 但是由于是动态执行的,效率相对来说会降低,不过这通常是不足一提的。...数字类型 用index当成枚举值: const Days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thur', 'Fri', 'Sat'].reduce((pre, cur, index

3K10
领券