`

Object.keys()获取可被枚举的属性

 
阅读更多
Object.keys() 方法会返回一个由给定对象的所有可枚举自身属性的属性名组成的数组。

    *  数组中属性名的排列顺序和使用for-in循环遍历该对象时返回的顺序一致。
         **主要区别是 for-in 还会遍历出一个对象从其原型链上继承到的可枚举属性。

语法:Object.keys(obj)
var arr = ["a", "b", "c"];
alert(Object.keys(arr)); // 弹出"0,1,2"

var obj = { "name" :"wjy","age": 26, "sex":"female"};
alert(Object.keys(obj)); // 弹出"name,age,sex"

兼容那些没有原生支持Object.key方法的JavaScript环境:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/keys

浏览器兼容性:
Firefox   Chrome    IE       Opera    Safari
4 (2.0)       5              9         12        5
分享到:
评论

相关推荐

    all-keys:获取对象的所有属性键,包括不可枚举和继承的

    获取对象的所有属性键,包括不可枚举和继承的 像一样,但是遍历原型链。 安装 $ npm install all-keys 用法 import allKeys from 'all-keys' ; Object . getOwnPropertyNames ( Symbol . prototype ) ; /* [ '...

    JS 5种遍历对象的方式

    那和 Object.keys() 方法不就一样了吗 感觉事情并不这么简单,于是我仔细看了一下这几种遍历对象的方法的区别 for in for in 循环是最基础的遍历对象的方式,它还会得到对象原型链上的属性 // 创建一个对象并指定其...

    JS中如何轻松遍历对象属性的方式总结

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

    vue源码技术点(第一天)

    会返回一个对象中所有可枚举的key,如果是数组,将会返回下标。 例如: 1.const configs = { umdDev: { format: 'umd', env: 'development' }, umdProd: { format: 'umd', env: 'production' } } console....

    private-object:创建一个不可变的可枚举对象

    创建一个不可变的可枚举对象。 使用 ES6 符号、getter/setter 和Object.seal 。 安装 $ npm install private-object 用法 const priv = require ( 'private-object' ) var boop = priv ( { foo : 'bar' } ) ...

    objectify-error:从错误对象的可枚举和不可枚举属性创建错误对象

    从普通错误对象的可枚举和不可枚举属性创建可枚举错误对象。 例子 var objerr = require('objectify-error'); var e = new Error('error message'); Object.keys(e); // returns [] Object.keys(objerr(e)); // ...

    JavaScript 5th

    ECMA 2009年12月推出了 JavaScript 5,除了增强基础函数库之外,还引入了严格运行时模式...Object.getOwnPropertyNames() 会列出对象中所有可枚举以及不可枚举的属性 Object.getPrototypeof() 返回给定对象的原型

    javascript 用函数实现继承详解

    (2)Object.keys():返回数组(可枚举的自有属性) (3)Object.getOwnPropertyNames():所有的自有属性 3、属性的特性:数据属性和存取器属性 (1)数据属性:可写(writable) 可枚举(enumerable) 可配置...

    js判断对象是否为空

    该方法会返回一个由给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in… 循环遍历该对象时返回的顺序一致 。即可以通过返回数组的长度来判断是否为空对象,若为空对象,该数组长度为0。例...

    vue实现动态数据绑定

    这个方法精确添加或修改对象的属性,我们添加的属性是可以枚举的属性(Object.keys()/ for…in) 对象里面存在是属性描述存在的形式是: 数据描述符:拥有可写入或不可以写入的属性(相当于口令密码) 存

    VueSource:数据代理-》模板解析-》数据劫持-》数据绑定---》 Vue源码解析

    keys())value: 指定初始值writable: true/false value是否可以修改存取(访问)描述符get: 函数, 用来得到当前属性值set: 函数, 用来监视当前属性值的变化4.Object.keys(obj): 得到对象自身可枚举的属性名的数组5....

    MVVM:对VueMVVM模式的理解

    keys())value: 指定初始值writable: true/false value是否可以修改存取(访问)描述符get: 函数, 用来得到当前属性值set: 函数, 用来监视当前属性值的变化4.Object.keys(obj): 得到对象自身可枚举的属性名的数组5....

    171208_VueSource:Vue源码分析

    keys())value: 指定初始值writable: true/false value是否可以修改存取(访问)描述符get: 函数, 用来得到当前属性值set: 函数, 用来监视当前属性值的变化4.Object.keys(obj): 得到对象自身可枚举的属性名的数组5....

    180228_VueSource:vue原始码解析

    1.准备 1.[].slice.call(lis): 将伪数组转换为真数组 2.node.nodeType: 得到节点类型 ...4.Object.keys(obj): 得到对象自身可枚举的属性名的数组 5.DocumentFragment: 文档碎片(高效批量更新多个节点) 6.obj.has

    vue_Source_code:vue_Source_code-vue source code

    1.准备 1.[].slice.call(lis): 将伪数组转换为真数组 2.node.nodeType: 得到节点类型 ...4.Object.keys(obj): 得到对象自身可枚举的属性名的数组 5.DocumentFragment: 文档碎片(高效批量更新多个节点) 6.obj.has

    VueSource:Vue原始码解析-源码解析

    MVVM位数 1.准备 1.[].slice.call(lis): 将伪数组转换为真数组 2.node.nodeType: 得到节点类型 ...4.Object.keys(obj): 得到对象自身可枚举的属性名的数组 5.DocumentFragment: 文档碎片(高效批量更新多个节点) 6.

    vue-source-code-analyze:vue源代码分析-vue source code

    Object.defineProperty(obj,propertyName,{}):给对象添加/修改属性(指定引用)数据可配置:true / false是否可以重新定义deumenable:true / false是否可以枚举(for..in / keys())值:指定的初始值可写:...

    170925_VueSource:Vue原始码分析

    1.分析vue作为一个MVVM框架的基本实现原理 数据代理 模板解析 数据绑定 2.准备 1.[].slice.call(lis): 将伪数组转换为真数组 2.node.nodeType: 得到...4.Object.keys(obj): 得到对象自身可枚举的属性名的数组 5.Docu

    single-key:带有键标记的值的实用程序(用于创建带有普通对象的类型化的并集)

    也就是说,如果val ,则返回true: 是一个对象(请注意,数组算作一个对象) 根据Object.keys()恰好包含一个可枚举的属性名称(注意:即使符号是可枚举的,符号也不算作名称) 否则,返回false。 let obj = { foo :...

    filter-keys:使用全局模式过滤对象的键

    过滤键 使用全局模式过滤对象的键。 用安装$ npm i filter-... 只是…|:修改对象自己的可枚举属性(键)的名称。 |sort-object :对对象中的键进行排序。 | 主页 运行测试安装开发人员依赖项: $ npm i -d && npm t

Global site tag (gtag.js) - Google Analytics