iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >Object.keys()、Object.values()、Object.entries()怎么使用
  • 154
分享到

Object.keys()、Object.values()、Object.entries()怎么使用

2023-07-05 23:07:43 154人浏览 八月长安
摘要

这篇文章主要介绍“Object.keys()、Object.values()、Object.entries()怎么使用”,在日常操作中,相信很多人在Object.keys()、Object.values()、Object.entries()

这篇文章主要介绍“Object.keys()、Object.values()、Object.entries()怎么使用”,在日常操作中,相信很多人在Object.keys()、Object.values()、Object.entries()怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Object.keys()、Object.values()、Object.entries()怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Object.keys()

一、官方解释

Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 。如果对象的键-值都不可枚举,那么将返回由键组成的数组。

二、语法

Object.keys(obj)
参数:要返回其枚举自身属性的对象
返回值:一个表示给定对象的所有可枚举属性的字符串数组

三、处理对象,返回可枚举的属性数组

            let person={                name:'一只流浪的kk',                age:20,                eat:function(){}            }            console.log(Object.keys(person));//    ['name','age','eat']

四、处理数组,返回索引值数组

 let arr=[1,2,3,4,5]; console.log(Object.keys(arr));//['0','1','2','3','4','5']

五、处理字符串,返回索引值数组

let str='hello';console.log(Object.keys(str));//['0','1','2','3','4']

六、实用技巧

 let person={                   name:'一只流浪的kk',                   age:18,                   eat:function(){                                          }           }           Object.keys(person).map((key)=>{                   person[key];//获得属性对应的值,可以进行其它处理           })

Object.values()

一、返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历属性的键值

let obj = {    foo : "bar",    baz : 20};console.log(Object.values(obj));  // ["bar", 20]

二、返回数组的成员顺序,与属性的遍历部分介绍的排列规则一致

const obj = {100 : "a", 2 : "b", 7 : "c"};console.log(Object.values(obj));   //["b", "c", "a"]

三、Object.values()只会遍历对象自身的可遍历属性

const obj = Object.create({},{p : {value : 10}});console.log(Object.values(obj));    console.log(Object.getOwnPropertyDescriptors(obj)); // []

Object.create方法的第二个参数添加的对象属性(属性p),如果不显式声明,默认是不可遍历的,因为p的属性描述对象的enumerable默认是false,Object.values不会返回这个属性。
因此只要把enumerable改成true,Object.values就会返回属性p的值。

const obj = Object.create({},{p:{     value : 10,     enumerable : true,     configurable : true,     writable : true,}})console.log(Object.values(obj));    //[10]

四、Object.values会过滤属性名为 Symbol 值的属性

//如果Object.values方法的参数是一个字符串,会返回各个字符组成的一个数组。Object.values({ [Symbol()]: 123, foo: 'abc' });console.log(Object.values('foo'));  //["f", "o", "o"]

五、如果参数不是对象,Object.values会先将其转为对象

console.log(Object.values(42));  // []console.log(Object.values(true));  // []console.log(Object.values(undefined));   //errorconsole.log(Object.values(null));   //error

Object.entries()

一、Object.entries方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历(enumerable)属性的键值对数组

var obj = { foo: 'bar', baz: 42 };console.log(Object.entries(obj));

Object.keys()、Object.values()、Object.entries()怎么使用

二、如果原对象的属性名是一个 Symbol 值,该属性会被省略

console.log(Object.entries({ [Symbol()]: 123, foo: 'abc' }));  // [ [ 'foo', 'abc' ] ]

三、遍历对象的属性

let obj = {    one : 1,    two : 2,}for(let [k , v] of Object.entries(obj)){     console.log(`${JSON.stringify(k)} : ${jsON.stringify(v)}`);}

Object.keys()、Object.values()、Object.entries()怎么使用

四、将对象转为真正的Map结构

const obj = {foo : "bar", baz : 10};const map = new Map(Object.entries(obj));console.log(map);

Object.keys()、Object.values()、Object.entries()怎么使用

五、实现Object.entries方法

const entries = (obj) => {     let result = [];     const objType = typeof(obj);     if(obj === undefined || obj === null){          throw new TypeError();     }     if(objType === "number" || objType === "boolean"){         return [];     }     for(let k of Object.keys(obj)){         result.push([k,obj[k]]);     }     return result}

到此,关于“Object.keys()、Object.values()、Object.entries()怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Object.keys()、Object.values()、Object.entries()怎么使用

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

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

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

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

下载Word文档
猜你喜欢
  • Object.keys()、Object.values()、Object.entries()怎么使用
    这篇文章主要介绍“Object.keys()、Object.values()、Object.entries()怎么使用”,在日常操作中,相信很多人在Object.keys()、Object.values()、Object.entries()...
    99+
    2023-07-05
  • Object.keys()、Object.values()、Object.entries()用法总结
    目录Object.keys()一、官方解释二、语法三、处理对象,返回可枚举的属性数组四、处理数组,返回索引值数组五、处理字符串,返回索引值数组六、实用技巧Object.values(...
    99+
    2023-05-15
    Object.keys() Object.values() Object.entries()
  • js如何使用Object.entries
    小编给大家分享一下js如何使用Object.entries,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Object.entries大多数开发人员使用 Objec...
    99+
    2023-06-27
  • JavaScript中Object.entries()方法怎么用
    这篇文章主要为大家展示了“JavaScript中Object.entries()方法怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript中O...
    99+
    2024-04-02
  • JavaScript如何使用Object.values函数
    这篇文章将为大家详细讲解有关JavaScript如何使用Object.values函数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Object.values:返回一个给定对象自身的所有可枚举属性值的数组...
    99+
    2023-06-03
  • JavaScript中Object.keys()方法怎么用
    这篇文章将为大家详细讲解有关JavaScript中Object.keys()方法怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Object.keysObject.k...
    99+
    2024-04-02
  • JavaScript如何使用Object.keys()判空
    这篇文章主要介绍了JavaScript如何使用Object.keys()判空,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Object.ke...
    99+
    2024-04-02
  • JavaScript如何使用Object.keys函数
    这篇文章给大家分享的是有关JavaScript如何使用Object.keys函数的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Object.keys:返回一个由一个给定对象的自身可枚举属性组成的数组Object....
    99+
    2023-06-03
  • 对象类如何使用Object.values()方法
    小编给大家分享一下对象类如何使用Object.values()方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 使用 Object.values() 通过使用 Object.valu...
    99+
    2024-04-02
  • 关于Object.entries()方法的使用和实现方式
    Object.entries()方法的使用和实现 1、定义 Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该...
    99+
    2023-02-10
    Object.entries()方法 使用Object.entries() Object.entries()
  • Canvas怎么使用
    本篇内容介绍了“Canvas怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!传统的HTML主要用于文本的创建,可以通过<img&...
    99+
    2023-06-04
  • 怎么使用AudioManager
    这篇文章主要讲解了“怎么使用AudioManager”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用AudioManager”吧!当我们在听歌时,当我们在刷小视频时,当我们在看动漫、在...
    99+
    2023-06-04
  • 怎么使用Explain
    本篇内容主要讲解“怎么使用Explain”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Explain”吧!执行计划 (Execution Plan)什么执行计划Postgres 有一个强...
    99+
    2023-06-03
  • 怎么使用Smartour
    这篇文章主要讲解了“怎么使用Smartour”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用Smartour”吧!InstallSmartour&nb...
    99+
    2024-04-02
  • 怎么使用Sass
    这篇“怎么使用Sass”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Sass”文章...
    99+
    2024-04-02
  • jQuery.holdReady()怎么使用
    这篇文章主要介绍“jQuery.holdReady()怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“jQuery.holdReady()怎么使用”文章能帮助...
    99+
    2024-04-02
  • Protostuff怎么使用
    今天小编给大家分享一下Protostuff怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2024-04-02
  • htop怎么使用
    本文小编为大家详细介绍“htop怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“htop怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 htop使用详解 一....
    99+
    2024-04-02
  • 怎么使用vuex4
    这篇文章主要讲解了“怎么使用vuex4”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用vuex4”吧!一、安装以及初始化vuex4安装:npm install vu...
    99+
    2023-06-25
  • 怎么使用SecureCRT
    这篇文章主要讲解了“怎么使用SecureCRT”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用SecureCRT”吧!简单的介绍SecureCRT 是一款支持SSH(SSH1和SSH2...
    99+
    2023-06-25
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作