我有一个JavaScript对象,是否有内置的或公认的最佳实践方法来获取此对象的长度?
const myObject = new Object();
myObject["firstname"] = "Gareth";
myObject["lastname"] = "Simpson";
myObject["age"] = 21;
最可靠的答案(即,在引起最少的错误的同时,捕捉您要尝试做的事情的意图)将是:
Object.size = function(obj) {
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
// Get the size of an object
var size = Object.size(myObj);
JavaScript中有一种约定,您无需向Object.prototype添加任何内容,因为它可能会破坏各种库中的枚举。不过,向Object添加方法通常是安全的。
更新,以及ES5及更高版本的[广泛部署。 对于IE9+和所有其他支持ES5 +的现代浏览器,您可以使用,Object.keys()
因此上面的代码变为:
var size = Object.keys(myObj).length;
由于它Object.keys()
是内置的,因此无需修改任何现有的原型。
编辑 :对象可以具有不能通过Object.key方法返回的符号属性。因此,如果不提及它们,答案将是不完整的。
符号类型已添加到语言中,以创建对象属性的唯一标识符。Symbol类型的主要好处是可以防止覆盖。
Object.keys
或Object.getOwnPropertyNames
不适用于符号属性。要返回它们,您需要使用Object.getOwnPropertySymbols
。
var person = {
[Symbol('name')]: 'John Doe',
[Symbol('age')]: 33,
"occupation": "Programmer"
};
const propOwn = Object.getOwnPropertyNames(person);
console.log(propOwn.length); // 1
let propSymb = Object.getOwnPropertySymbols(person);
console.log(propSymb.length); // 2
本文向大家介绍javascript计算对象长度的方法,包括了javascript计算对象长度的方法的使用技巧和注意事项,需要的朋友参考一下 计算对象的长度,即获取对象属性的个数,具体如下 方法一:通过for in 遍历对象,并通过hasOwnProperty判断是否是对象自身可枚举的属性 方法二:通过Object.keys()获取对象可枚举属性所组成的数组,并通过length获取对象长度 以上就是
我有2个对象数组和2个如果条件 编辑网格行时,和将具有相同的长度,因此第一个if条件执行。当我添加新行时,长度将超过,因此第二个如果条件执行。 但我有一种情况,用户可以添加一个新行,然后立即编辑一个现有行。在那个特定的场景中,我需要执行if条件,并且我停留在那里。我们将听取任何建议。谢谢
问题内容: 是否有任何内置函数可以返回对象的长度? 例如,我有哪个应该返回。如果我使用它返回。 它可能是一个简单的循环函数,但我想知道是否有内置函数? 问题答案: 对于支持Object.keys()的浏览器,您可以执行以下操作: 否则(特别是在IE <9中),您可以使用循环自己遍历对象: 该是有确保你只从字面对象计数的属性,而不是从它的原型属性是“继承”。
问题内容: 如果我理解正确,ECMAScript 5具有类型的原型,但没有类型的原型。 如何在JavaScript中实现for for ? 假设我有这个对象: 我想写一个适用于s的: 当我在以下演示中使用它时,此方法有效,但是当我将其添加到使用jQuery 1.5和jQuery UI 1.8.9的站点时,在FireBug中出现JavaScript错误。 问题答案: 永远不要扩展。 您的代码将发生可
主要内容:JS 创建对象,访问对象的属性,设置修改对象的属性,JS 删除对象的属性,JS 调用对象的方法JavaScript 是一种面向对象的编程语言,在 JavaScript 中几乎所有的东西都是对象。因此,要想有效的使用 JavaScript,首先需要了解对象的工作原理以及如何创建并使用对象。 我们可以将对象看作是一个属性的无序集合,每个属性都有一个名称和值(键/值对)。通过《 JS数据类型》一节我们知道,数组是值的集合,每个值都有一个数字索引(从零开始,依次递增)。对象类似与数组,不同的是
对象 指包含数据和用于处理数据的指令的数据结构. 对象有时也指现实世界中的一些事, 例如在赛车游戏当中一辆车或者一幅地图都可以是一个对象。—— MDN JavaScript 中的对象由属性和方法组成。 属性可以是任意 JavaScript 中的数据类型,方法则是一个函数。 1. 创建对象 对象的格式如下: { prop1: 'value1', prop2: 666, prop3: {}