对象属性可枚举,表示该属性的值不可修改,可认为该属性是常量。
如何定义不可枚举的属性?
var obj = {name: 'jack', age:23}
Object.defineProperty(obj, 'id', {value : '123', enumerable : false });
获得对象实例属性集的方法:(实例属性指该属性仅存在于当前对象中)
1.
Object.keys(obj); // 获得对象上所有可枚举的“实例属性”
2.
Object.getOwnPropertyNames(obj) ;//获得对象上所有的“实例属性”
判断对象是否拥有某实例属性的方法:
obj.hasOwnProperty(‘id’); //只要该对象obj拥有属性id, 无论id是否可枚举,都返回true
for(var i in obj){ } // 表示访问对象所有可枚举的属性,包括可枚举的实例属性和可枚举的原型对象的属性
“name” in obj // 通过对象能够访问给定属性名时返回true, 无论该属性存在于实例中还是原型对象中
原文:http://blog.csdn.net/haojianfeng11/article/details/16331963
相关推荐
deeplyAssign 将所有可枚举的属性和符号属性的值从一个或多个源对象深度复制到目标对象。它将返回目标对象。使用TypeScript编写。
在JavaScript中,对象的属性分为可枚举和不可枚举之分,它们是由属性的enumerable值决定的。可枚举性决定了这个属性能否被for…in查找遍历到。 一、怎么判断属性是否可枚举 js中基本包装类型的原型属性是不可枚举的...
主要介绍了JS 对象属性相关(检查属性、枚举属性等),需要的朋友可以参考下
Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致 。如果对象的键-值都不可枚举,那么将返回由键组成的数组。 这是...
可枚举的 使对象的所有属性都可枚举。 可选地,默认为深,浅。安装用安装$ npm i make-enumerable --save用法 var makeEnumerable = require ( 'make-enumerable' ) ;var delegate = require ( 'delegate-properties...
这篇文章主要介绍了JavaScript对象属性操作实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在js对象中,我们可以对对象属性进行操作。 上图的要点为...
从普通错误对象的可枚举和不可枚举属性创建可枚举错误对象。 例子 var objerr = require('objectify-error'); var e = new Error('error message'); Object.keys(e); // returns [] Object.keys(objerr(e)); // ...
获取对象的所有属性键,包括不可枚举和继承的 像一样,但是遍历原型链。 安装 $ npm install all-keys 用法 import allKeys from 'all-keys' ; Object . getOwnPropertyNames ( Symbol . prototype ) ; /* [ '...
在ECMAScript 3标准中,上面三个属性的值均为true且不可改:新建对象的property是可写的、可被枚举的、可删除的;而在ECMAScript 5标准中,可通过property的描述对象(property descriptor)来对这些属性进行配置和...
:轻松生成具有函数值的对象的所有可枚举属性(拥有和继承)的属性名称的 JSON 或降价列表(排序数组)。 运行测试 安装开发依赖项。 npm i -d && npm test 贡献 拉取请求和星星总是受欢迎的。 对于错误和功能请求...
列出对象的可枚举的自身和继承的属性键。 “收藏夹”是“收藏夹”的缩写,也是“对于所有版本”的缩写。 该软件包旨在支持所有Node.js版本和尽可能多的浏览器。 至少,此软件包支持Node.js> = v0.10和主要的Web...
Js中Proxy对象 Proxy对象用于定义基本操作的自定义行为,例如属性查找、赋值、枚举、函数调用等。 语法 const proxy = new Proxy(target, handler); target: 要使用Proxy包装的目标对象,可以是任何类型的...
从方法名称来分析,应该是返回的是对象自身属性名组成的数组 那和 Object.keys() 方法不就一样了吗 感觉事情并不这么简单,于是我仔细看了一下这几种遍历对象的方法的区别 for in for in 循环是最基础的遍历对象的...
计算对象的长度,即获取对象属性的个数,具体如下 方法一:通过for in 遍历对象,并通过hasOwnProperty判断是否是对象自身可枚举的属性 var obj = {"c1":1,"c2":2}; function countProperties(obj){ for(var ...
js代码-Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象
JavaScript中的几种继承方法示例 1.原型链继承 ...原型对象上有一个constructor属性,指向创建该对象的构造函数,该属性不可枚举。 var obj = {}; obj.__proto__ === Object.prototype; //true console
JavaScript 中的六种... } for...in循环可以用来遍历对象的可枚举属性列表(包括原型链上的属性) const myObject={}; Object.defineProperty(myobject,"a",{ //可枚举 enumerable:true, value:2, }) Object
对象长度 获取对象属性的长度,不包括原型属性。 适用于 dontEnum 错误。使用安装npm i object-length --save用法 var len = require ( 'object-length' ) ;len ( { a : 'a' , b : 'b' } ) ;//=> 2 适用于dontEnum...