美文网首页
ES对象方法

ES对象方法

作者: 大鸿先生 | 来源:发表于2018-12-24 17:59 被阅读0次

    ES7

    Object.keys(obj)

    传入一个对象,返回一个包含对象的可枚举属性和方法的名称的、所有元素为字符串的数组。

    ES6之后传入的不是对象也可以强制转换为对象,而在ES5中,如果传入的不是对象会报错:xx is not an object。

    ES6中传入的不是对象的具体返回值:

    传入字符串,返回索引值。

    传入数组,返回索引值。

    传入数组,返回索引值

    构造函数,返回空数组或者属性名

    通俗而不严谨的说,就是返回一个由对象的属性名/方法名组成的数组。

    一个正常的code狗在脑子还算清醒的情况下

    注意:keys 方法仅返回可枚举属性和方法的名称;若要返回可枚举和不可枚举属性和方法的名称,可以使用Object.getOwnPropertyNames()函数。

    那么问题来了,学以致用嘛,当你想遍历对象的所有值时,该怎么做?

    遍历对象的所有值

    诶意外发现了一种把对象转换成数组的方法啊哈哈 ~

    好了,这种方法看起来很好用,但是ES7已经老了,让我们试试看如果使用ES8如何操作:

    ES8

    Object.values()

    遍历对象的所有值

    这两种方式得到的结果是一致的,也就是说Object.values()帮我们省去了遍历key,并根据这些key获取value的步骤,可以直接得到对象的键值组成的数组。

    那么也就是这两种方法,通俗而不严谨的,我们可以理解成,Object.keys()可以帮我们获取对象键名组成的数组,Object.values()可以帮我们获取对象键值组成的数组,真的超级方便了。

    ES8还为我们提供了一种方法,用来返回一个给定对象自身可枚举属性的键值对的数组。

    Object.entries()

    例一 例二

    也是超级贴心了~

    相关文章

      网友评论

          本文标题:ES对象方法

          本文链接:https://www.haomeiwen.com/subject/sdozkqtx.html