js获取对象、数组的实际长度,元素实际个数的实现代码

yizhihongxing

获取对象、数组的实际长度和元素实际个数是 JavaScript 开发中常见的需求,下面是实现代码的完整攻略。

获取对象实际长度的代码

JavaScript 中获取对象实际长度的方法与获取数组长度的方法是相似的,可以利用 Object.keys() 函数和 for...in 循环来实现。这里我们提供两种方法:

方法一:利用 Object.keys() 函数

const obj = {
  name: 'John',
  age: 25,
  gender: 'Male'
};

const objLength = Object.keys(obj).length;
console.log(objLength);  // 输出 3

使用 Object.keys() 函数可以将对象的属性名转化为一个包含属性名的数组,数组的长度就是对象实际包含属性的个数。

方法二:利用 for...in 循环

const obj = {
  name: 'John',
  age: 25,
  gender: 'Male'
};

let objLength = 0;
for (let key in obj) {
  if (obj.hasOwnProperty(key)) {
    objLength++;
  }
}
console.log(objLength);  // 输出 3

使用 for...in 循环可以遍历对象的属性名,只要判断属性名是否属于对象,就可以得到对象的实际长度。

获取数组实际长度、元素个数的代码

获取数组实际长度的方法很简单,可以利用 JavaScript 内置的 length 属性。但是如果想获得数组的实际元素个数,需要注意区分数组内的 undefinednull 等空值的情况。以下是实现代码:

const arr = [1, 2, , 4, null, undefined, 7];

const arrLength = arr.length;
console.log(arrLength);  // 输出 7(包含 undefined)

let elementCount = 0;
arr.forEach((item) => {
  if (item !== null && item !== undefined) {
    elementCount++;
  }
});
console.log(elementCount);  // 输出 5

可以使用数组的 forEach() 方法遍历数组,然后判断数组元素是否为空值,从而获得实际元素个数。

另外,如果需要过滤数组中的空值,可以使用数组的 filter() 方法:

const arr = [1, 2, , 4, null, undefined, 7];

const filterArr = arr.filter((item) => {
  return item !== null && item !== undefined;
});
console.log(filterArr);  // 输出 [1, 2, 4, 7]

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js获取对象、数组的实际长度,元素实际个数的实现代码 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • js设置默认时间跨度过程详解

    JavaScript 设置默认时间跨度过程详解 在编写网站或应用程序时,常常需要对一些时间进行处理。如果存在时间跨度选择功能,通常也需要为其提供默认时间跨度。下面将讲解如何使用 JavaScript 设置默认时间跨度。 一、获取当前时间 在设置默认时间跨度之前,我们需要先获取当前时间。可以使用 JavaScript 中的Date对象来获取。 const no…

    JavaScript 2023年5月27日
    00
  • 用javascript做一个小游戏平台 (二) 游戏选择器

    下面就让我来详细讲解如何用 JavaScript 做一个小游戏平台。 游戏选择器 游戏选择器是一个可以让用户选择游戏的组件,我们需要实现以下功能: 显示游戏的缩略图和名称。 点击缩略图或名称可以进入游戏。 可以添加新游戏。 首先,我们需要初始化一个游戏列表。我们可以使用一个存储游戏信息的对象数组来存储游戏列表。每个游戏对象都应该包含游戏名称、游戏缩略图、游戏…

    JavaScript 2023年6月10日
    00
  • JSON.stringify 语法实例讲解

    下面是详细讲解“JSON.stringify 语法实例讲解”的完整攻略: 1.什么是JSON.stringify? JSON.stringify() 是一个JavaScript内置函数,可以将JavaScript的对象或数组转化成一个JSON字符串。 JSON.stringify()的语法如下: JSON.stringify(value[, replacer…

    JavaScript 2023年5月27日
    00
  • JavaScript实现简单的隐藏式侧边栏功能示例

    下面是“JavaScript实现简单的隐藏式侧边栏功能示例”的完整攻略: 一、需求分析 在进行网页设计时,我们往往需要一个侧边栏(Sidebar)来承载一些较为次要的信息或者操作。但是,如果这个侧边栏总是显眼地存在于页面左侧或右侧,难免会妨碍用户的视线,影响页面的美观度。因此,我们需要一种方法来实现一个隐藏式的侧边栏,以达到在需要时展示,不需要时隐藏的效果。…

    JavaScript 2023年6月11日
    00
  • 如何使用50行javaScript代码实现简单版的call,apply,bind

    下面是如何使用50行JavaScript代码实现简单版的call, apply, bind的完整攻略。 步骤 首先,我们需要一个函数作为示例,以便于演示call, apply, bind的使用。我们用一个简单的计算器函数,实现加法和乘法,代码如下: function Calculator() { this.add = function(num1, num2)…

    JavaScript 2023年6月11日
    00
  • jquery实现的用户注册表单提示操作效果代码分享

    下面是详细的攻略: 什么是jQuery实现的用户注册表单提示操作效果? jQuery实现的用户注册表单提示操作效果就是在用户填写注册表单时,通过jQuery来实现对用户输入进行实时提示的效果。例如,当用户在用户名输入框中输入一些字符时,jQuery可以实现在下方显示一个提示框,告诉用户该用户名是否已经被占用。 实现步骤 引入jQuery库 要使用jQuery…

    JavaScript 2023年6月10日
    00
  • js实现登陆与注册功能

    实现登录和注册功能是实现网站用户系统非常重要的一部分。下面是一个基本的js实现登陆与注册的攻略: 1.设计数据库 数据库是用来保存用户信息和验证用户身份的主要存储介质,需要提前设计好数据库的结构并使用相关的数据库技术(如MySQL)进行实现,至少包含用户信息表和用户登录信息表。常见的用户信息表包含加密后的用户名、加密后的密码、用户邮箱、注册时间等字段,示例:…

    JavaScript 2023年5月19日
    00
  • JavaScript 异步调用框架 (Part 2 – 用例设计)

    JavaScript异步调用框架 (Part 2 – 用例设计) 什么是异步调用? JavaScript是一种单线程的语言,所以同一时间只能执行一个任务。当一个任务阻塞了线程时,其他任务只能等待。由于JavaScript常用于web编程中,用户期望网页能够立即响应他们的操作。如果JavaScript因为执行某些长时间运行的函数而阻塞了线程,网页将会出现卡顿的…

    JavaScript 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部