iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >JS中遍历对象的方法有哪些
  • 252
分享到

JS中遍历对象的方法有哪些

2024-04-02 19:04:59 252人浏览 独家记忆
摘要

本篇内容主要讲解“js中遍历对象的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS中遍历对象的方法有哪些”吧! 1 简介对象是在编程中最常

本篇内容主要讲解“js中遍历对象的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS中遍历对象的方法有哪些”吧!

 1 简介

对象是在编程中最常见的部分,很多情况下需要遍历该对象上的属性,那么有几种方式可以帮助我们遍历该对象上的属性呢?下面一起来了解九种方法。

下面测试方法所用的对象如下所示:

const parentObj = {     a: 'aaaaa',     b: Symbol('bbbbb'),     c: 'ccccc' };  const Obj = Object.create(parentObj, {     d: {         value: 'DDDdd',         enumerable: true     },     e: {         value: 'eeeee',         enumerable: false     },     [Symbol('f')]: {         value: 'fffff',         enumerable: true     } });

Object.keys(obj)

Object.keys  返回一个所有元素为字符串数组,其元素来自于从给定的object上面可直接枚举的属性(不含Symbol属性)。这些属性的顺序与手动遍历该对象属性时的一致。

console.log('Object.keys()', Object.keys(Obj)); // Object.keys() [ 'd' ]

Object.values(obj)

Object.values()返回一个数组,其元素是在对象上找到的可枚举属性值。属性的顺序与通过手动循环对象的属性值所给出的顺序相同。

console.log('Object.values()', Object.values(Obj)); // Object.values() [ 'ddddd' ]

Object.entries(obj)

Object.entries()返回一个数组,其元素是与直接在object上找到的可枚举属性键值对相对应的数组。属性的顺序与通过手动循环对象的属性值所给出的顺序相同。

console.log('Object.entries()', Object.entries(Obj)); // Object.entries() [ [ 'd', 'ddddd' ] ]

Object.getOwnPropertyNames(obj)

Object.getOwnPropertyNames()方法返回一个由指定对象的所有自身属性的属性名(包括不可枚举属性但不包括Symbol值作为名称的属性)组成的数组。

console.log('Object.getOwnPropertyNames()', Object.getOwnPropertyNames(Obj)); // Object.getOwnPropertyNames() [ 'd', 'e' ]

Object.getOwnPropertySymbols(obj)

Object.getOwnPropertySymbols() 方法返回一个给定对象自身的所有 Symbol 属性的数组。

console.log('Object.getOwnPropertySymbols()', Object.getOwnPropertySymbols(Obj)); // Object.getOwnPropertySymbols() [ Symbol(f) ]

for……in

遍历所有可枚举的属性(包括原型上的),然后可利用hasOwnProperty判断对象是否包含特定的自身(非继承)属性,其具有以下特点:

(1)index索引为字符串型数字,不能直接进行几何运算

(2)遍历顺序有可能不是按照实际数组的内部顺序

(3)会遍历数组的所有可枚举属性,包括原型

(4)for...in更适合便利对象,不要使用for...in遍历数组

for(let key in Obj) {     // for in: d     // for in: a     // for in: b     // for in: c     console.log('for in:', key); }

for……of

必须部署了Iterator接口后才能使用。使用范围:数组、Set和Map结构、类数组对象(arguments、DOMnodeList对象……)、Generator对象以及字符串

for(let value of Object.values(Obj)) {     // for of: ddddd     console.log('for of:', value); }

forEach

使用break不能中断循环使用

Object.values(Obj).forEach(value => {     // forEach: ddddd     console.log('forEach:', value); });

Reflect.ownKeys(obj)

返回一个数组,包含对象自身的所有属性,不管属性名是Symbol还是字符串,也不管是否可枚举。

console.log('Reflect.ownKeys()', Reflect.ownKeys(Obj)); // Reflect.ownKeys() [ 'd', 'e', Symbol(f) ]

2 特点总结

类型特点
Object.keys(obj)返回对象本身可直接枚举的属性(不含Symbol属性)
Object.values(obj)返回对象本身可直接枚举的属性值(不含Symbol属性)
Object.entries(obj)返回对象本身可枚举属性键值对相对应的数组(不含Symbol属性)
Object.getOwnPropertyNames(obj)返回对象所有自身属性的属性名(不包括Symbol值作为名称的属性)
Object.getOwnPropertySymbols(obj)返回一个给定对象自身的所有 Symbol 属性的数组
for……in所有可枚举的属性(包括原型上的)
for……of必须部署了Iterator接口后才能使用,例如数组、Set和Map结构、类数组对象、Generator对象以及字符串
forEachbreak不能中断循环
Reflect.ownKeys(obj)对象自身所有属性

3 遍历顺序

上述遍历对象的属性时都遵循同样的属性遍历次序规则:

  • 首先遍历所有属性名为数值的属性,按照数字排序

  • 其次遍历所有属性名为字符串的属性,按照生成时间排序

  • 最后遍历所有属性名为Symbol值的属性,按照生成时间排序

用下面代码来验证上述遍历规则

const Obj = {     [Symbol(0)]: 'symbol',     1 : '1',     'c': 'c',     '1a1': '11',     22223333: '2',     'd': 'd' };  console.log(Reflect.ownKeys(Obj)); // [ '1', '22223333', 'c', '1a1', 'd', Symbol(0) ]

到此,相信大家对“JS中遍历对象的方法有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: JS中遍历对象的方法有哪些

本文链接: https://www.lsjlt.com/news/67120.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JS中遍历对象的方法有哪些
    本篇内容主要讲解“JS中遍历对象的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS中遍历对象的方法有哪些”吧! 1 简介对象是在编程中最常...
    99+
    2022-10-19
  • JavaScript中有哪些遍历对象的方法
    这篇文章将为大家详细讲解有关JavaScript中有哪些遍历对象的方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。JavaScript可以做什么1.可以使网页具有交互性,例如响应用户点击,...
    99+
    2023-06-14
  • es6遍历对象的方法有哪些
    这篇文章主要介绍了es6遍历对象的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇es6遍历对象的方法有哪些文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2022-10-19
  • es6遍历对象属性的方法有哪些
    本文小编为大家详细介绍“es6遍历对象属性的方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6遍历对象属性的方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2022-10-19
  • Javascript对象的循环遍历方法有哪些
    这篇文章主要介绍“Javascript对象的循环遍历方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Javascript对象的循环遍历方法有哪些”文章能帮助...
    99+
    2022-10-19
  • vue遍历对象属性的方法有哪些
    本教程操作环境:windows7系统、vue3版,DELL G3电脑。最近通过对象相关知识的深入学习,我发现对象的遍历主要分为两种情况,一种是在页面中遍历,另外一种是在方法中遍历对象,现在我们就从这两种情况分别来遍历对象获取对象的key和v...
    99+
    2023-05-14
    Vue
  • es6有遍历对象的方法吗
    今天小编给大家分享一下es6有遍历对象的方法吗的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。有,遍历方法:1、“for......
    99+
    2023-07-04
  • JavaScript中遍历数组和对象有哪些常用的方法
    这篇文章主要介绍“JavaScript中遍历数组和对象有哪些常用的方法”,在日常操作中,相信很多人在JavaScript中遍历数组和对象有哪些常用的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操...
    99+
    2022-10-19
  • es6有没有遍历对象的方法
    本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。es6遍历对象的6种方法(1)for...infor...in循环遍历对象自身的和继承的可枚举属性(不含 Symbol 属性)。const obj = {...
    99+
    2022-11-22
    javascript ES6
  • php遍历对象的方法
    目录对于php来说,foreach是非常方便好用的一个语法,几乎对于每一个PHPer它都是日常接触最多的请求之一。那么对象是否能通过foreach来遍历呢? 答案是肯定的,但是有个条...
    99+
    2022-11-12
  • JS中数组遍历方式有哪些
    小编给大家分享一下JS中数组遍历方式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JS数组遍历的几种方式JS数组遍历,基本...
    99+
    2022-10-19
  • python中遍历的方法有哪些
    python中实现遍历的方法:1.使用iter()函数遍历;2.使用enumerate()函数遍历;3.使用range()和len()函数遍历;python中实现遍历的方法有以下几种使用iter()函数遍历cities = ["G...
    99+
    2022-10-06
  • ResultSet的遍历方法有哪些
    这篇文章主要介绍“ResultSet的遍历方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ResultSet的遍历方法有哪些”文章能帮助大家解决问题。ResultSet的遍历方法Result...
    99+
    2023-07-05
  • react有哪些遍历方法
    这篇文章主要讲解了“react有哪些遍历方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“react有哪些遍历方法”吧! rea...
    99+
    2022-10-19
  • jquery有哪些遍历方法
    本教程操作环境:windows7系统、jquery3.6版本、Dell G3电脑。jQuery 遍历方法总结jQuery 遍历函数包括了用于筛选、查找和串联元素的方法。方法描述add()把元素添加到匹配元素的集合中addBack()把之前的...
    99+
    2023-05-14
    jquery javascript
  • JS中循环遍历数组方式有哪些
    这篇文章主要讲解了“JS中循环遍历数组方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JS中循环遍历数组方式有哪些”吧!本文比较并总结遍历数组的四种...
    99+
    2022-10-19
  • JS中轻松遍历对象属性的几种方式
    目录1、自身可枚举属性2、Object.values() 返回属性值3、Object.entries()4、对象属性的顺序1、自身可枚举属性 Object.keys() 方法会返回一...
    99+
    2022-11-12
  • JS创建对象的方法有哪些
    这篇文章将为大家详细讲解有关JS创建对象的方法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。第一种:Object构造函数创建var Person ...
    99+
    2022-10-19
  • JavaScript中有哪些遍历数组的方法
    这篇文章给大家介绍JavaScript中有哪些遍历数组的方法,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。javascript是一种什么语言javascript是一种动态类型、弱类型的语言,基于对象和事件驱动并具有相对...
    99+
    2023-06-14
  • php中遍历数组的方法有哪些
    本文小编为大家详细介绍“php中遍历数组的方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“php中遍历数组的方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。五种遍历方法:1、用“for($i=0...
    99+
    2023-06-30
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作