js获取数组元素个数和对象成员数

JavaScript对象属性个数的多种获取方法 当我们需要对JavaScript对象进行操作时,了解其属性个数是非常常见的需求。属性个数的统计不仅可以帮助我们理解对象的结构,还能为算法提供必要的信息,如深度拷贝、数据序列化、对象比较等。在JavaScript中,对象属性个数的获取有多种方法,它们各有特点和适用场景。本章将概述这些方法,并为后续章节中更详细的讨论打下基础。在下一章中,我们将首先探讨方法,它允许我们获取一个对象上所有可枚举的自有属性的键名。要计算一个对象的所有自身属性(不包括原型链上的属性),可以结合和来实现。 阅读详情

http://www.51-n.com/t-4080-1-1.html


Javascript怎么得到数组长度(也就是数组的元素个数)?
Javascript怎么获取对象的成员个数?
你肯定想到了array.length!? 那么我们来测试一下下面这个例子.
  1. <script type="text/javascript">
  2.         var a = [];
  3.         a[50] = 50;
  4.         alert(a.length);
  5. </script>
复制代码
请问数组a有多少个元素, 或者换一句话说, 数组a的长度为多少?你会告诉我长度为1, 但浏览器会告诉你a.length为51.
有点意思吧? 那我们再看一个例子.
  1. <script type="text/javascript">
  2.         var a = [];
  3.         a['age'] = '18';
  4.         a['sex'] = 'Male';
  5.         a['site'] = 'http://www.qSyz.net';
  6.         alert(a.length);
  7. </script>
复制代码
请问数组a有多少个元素, 或者换一句话说, 数组a的长度为多少?
我们都知道现在数组a的元素个数为3个,但浏览器会告诉你a.length为0 !!

js怎么获取对象的成员个数? 用length属性吗?
  1. <script type="text/javascript">
  2.         var a = {'age':30,'sex':'male'};
  3.         alert(a.length);
  4. </script>
复制代码
以上代码得到结果为undefined!

综上所述,length不可靠,要想得到准确的数组元素个数或者对象的成员个数,我们需要自己动手写一个函数.
如果传入数组则计算数组长度,如果传入对象则计算对象成员数,如果传入字符串则计算字符串的字数.其他类型返回false
  1. <script type="text/javascript">
  2.         function count(o){
  3.                 var t = typeof o;
  4.                 if(t == 'string'){
  5.                         return o.length;
  6.                 }else if(t == 'object'){
  7.                         var n = 0;
  8.                         for(var i in o){
  9.                                 n++;
  10.                         }
  11.                         return n;
  12.                 }
  13.                 return false;
  14.         }
  15. </script>
复制代码
现在在测试一下刚才的例子? 
  1. <script type="text/javascript">
  2.         var a = [];
  3.         a[50] = 50;
  4.         alert(count(a));
  5. </script>
复制代码
得到结果为2
  1. <script type="text/javascript">
  2.         var a = [];
  3.         a['age'] = '18';
  4.         a['sex'] = 'Male';
  5.         a['site'] = 'http://www.qSyz.net';
  6.         alert(count(a));
  7. </script>
复制代码
得到结果为3.
  1. <script type="text/javascript">
  2.         var a = {'age':30,'sex':'male'};
  3.         alert(count(a));
  4. </script>
复制代码
得到结果为2

js获取对象、数组的实际长度,元素实际个数的实现代码 下面小编就为大家带来一篇js获取对象、数组的实际长度,元素实际个数的实现代码。小编觉得挺不错的,现在就分享 给大家,也给大家做个参考。一起跟随小编过来看看吧 立即下载

相关推荐

ABB AC500 系列 PLC 与上位机iFix 的通讯配置

在 软件中,有 3 种方式可以进入 IP config tool 的配置界面 双击 IP_settings,点击 IP config tool,即可进入 IP config tool 界面点击菜单栏的 Tool→IP config如果单独安装了 ABB IP Configration,则可以通过开始→程序→ABB→ABB IPConfigration 启动 IP 配置工具启动 IP config tool 后,即可进入 IP 配置界面。

xdpcxq的专栏 4031

JavaScript获取对象中元素个数

var layerGroups = {}; layerGroups[layerGroup].push(layer); var groupCount = Object.getOwnPropertyNames(layerGroups).length;

a_dev的专栏 6491

wpa_supplicant EAPOL状态机分析

wpa_supplicant EAPOL状态机分析

加油鸭 1476

JavaScript求数组中每个元素的个数,如数组str = [1,2,3,2,4,1,2]中元素2的个数为2。要求:使用对象知识来实现,输出结果为对象,对象包含数组元素和个数值。

求数组中每个元素的个数,如数组str = [1,2,3,2,4,1,2]中元素2的个数为2。 要求:使用对象知识来实现,输出结果为对象,对象包含数组元素和个数值。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta nam

WHT869706733的博客 608

Windows环境Oracle19C安装与配置全攻略

本文详细介绍了在Windows环境下安装与配置Oracle19C数据库的完整流程,包括环境准备、安装步骤、网络配置、客户端工具设置及常见问题解决方案。特别针对Windows 10和Windows Server 2016及以上版本提供了优化建议,帮助用户高效完成Oracle19C的部署与维护。

weixin_28455801的博客 487

文献计量VOSviewer分析知网文献基本操作及实用技巧

本教程旨在为读者提供一个关于VOS viewer的初级使用指南。VOS viewer是一个强大的科学研究可视化工具,主要用于构建和可视化科学地图。它能够处理大规模的科研数据,包括文献引用、共引、共词、共作者等信息。无论你是科研人员,还是数据分析师,甚至是研究生,都能在这个教程中找到使用VOS viewer的有效方法。我们将一步步教你如何使用这个软件,以及如何利用它进行科研数据的可视化。

Jia_n的博客 8768

js获取数组长度,对象成员个数字、符串字数

文章来源:百度文库 Javascript怎么得到数组长度(也就是数组的元素个数)? Javascript怎么获取对象的成员个数? 你肯定想到了array.length!? 那么我们来测试一下下面这个例子. <script type="text/javascript"> var a = []; a[50] = 50; alert(a.length); ...

weixin_30823683的博客 1019

计算pi小数点后10000位

数据结构课上,老师让我们计算一下pi的10000位,复习一下面向对象。 First Try:定义一个高精度类hp(high precision),实现加减乘除,输入输出,然后随便找一个公式,比如Wallis公式,全都用hp进行计算。 现实是:大数乘大数或者大数除大数,实在是太慢了。而且Wallis公式收敛太慢。 Second Try先找到一个收敛较快的公司:BBP公式,观察公式发现,...

我的技术人生 7395

js数组:统计数组每个元素的个数

1.返回key-value数据结构 { "aaa":"lang", "bbb":"yun", "ccc":"song" } 特点:简单易见,但只能封装原始值数组 代码: function countArr(arr) { var hash = {}; arr.forEach((element) => { if(!hash[element]){ hash[element]=1; } else{ hash[

qq_44697303的博客 7692

华为OD机试真题 新系统2026-04-15 Python&JS 实现【失灵的键盘】

有一个键盘有2个按键失灵了,按下这些键时会连续输出其他键对应的字符两次。具体如下: 1. 按下j键一次,屏幕上显示uu(两个连续的u);  按下b键一次,屏幕上显示t(两个连续的t) 2. u键和t键是好的,按下u键一次时,屏幕只会显示一次u(正常按键);按下t键一次时,屏幕只会显示一次t(正常按键) 3. 假定屏幕上连续显示两个t一定是按了一次b键,而不是两次t键;假定按键t之后不会紧接着按键b,即tttt转义为两个b,而不可能是tb

MISAYAONE的博客 523

MCAL中MCU的配置

MCAL配置中MCU配置,PLL计算配置,系统时钟以及各模块参数配置

dhyw12399999的博客 3794

js从数组中提取自己所需的数据

1.人员选择问题,2.配置化选择数据

weixin_43190804的博客 6035

Python 爬虫实战:抓取新闻网站上的新闻标题和内容

随着信息化的进展,新闻网站已经成为人们获取新闻和时事资讯的主要途径。许多新闻网站提供了丰富的内容,涵盖了社会、政治、科技、娱乐等多个领域。通过抓取新闻网站的内容,我们可以分析新闻的趋势,获取某一领域的最新动态,甚至为数据分析和机器学习提供数据支持。本文将详细介绍如何使用 Python 编写爬虫,抓取新闻网站上的新闻标题和内容。requests:发送 HTTP 请求,获取页面内容。:解析 HTML 页面并提取数据。Selenium:抓取动态加载的网页内容。新闻API。

2201_76125261的博客 3408

js计算数组中某个元素重复出现的个数

js返回一个数组某值出现的次数 输入:一个数组中某个元素的值 输出:需要计算该元素在数组中重复出现的个数 let counts = (arr, value) => arr.reduce((a, v) => v === value ? a + 1 : a + 0, 0); console.log('数组counts中"李"出现的次数是:'+counts(["李","李","设",...

lixiaoyan93的博客 2万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Javascript 获取数组长度, 对象成员个数, 字符串数

1.应用场景 获取数组长度, 对象成员个数, 字符串数. 2.学习/操作 TBD 3.问题/补充 TBD 4.参考 https://www.cnblogs.com/sunnywindycloudy/p/7382226.html //js获取数组长度,对象成员个数、字符串数 后续补充 ... ...

"代码"的日常搬运 9500

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

JavaScript - 随机获取数组元素

1.应用场景 随机获取数组元素. 2.学习/操作 1.随机获取数组一个元素 var items = ['1','2','4','5','6','7','8','9','10']; var item = items[Math.floor(Math.random()*items.length)]; 2.随机获取几个元素 function getRandomArrayElements(arr, count) { var ..

"代码"的日常搬运 2万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

js判断数组中某个元素的个数

function statisticalFieldNumber(arr) { return arr.reduce(function (prev, next) { prev[next] = (prev[next] + 1) || 1; return prev; }, {}); } var arr = [...

马优晨 2万+

JS(JavaScript)——数组去重,及统计数组中各元素的个数(附源码!!!)

一,数组去重 方式一(使用两个for循环和if语句)执行效率相对低; var arr = [2,4,1,2,2,2,2,4,6,5,9,4,4,5,2]; for(i=0;i<arr.length;i++){ var a = arr[i]; for(a=i+1;a<arr.length;a++){ if(arr[i]==arr[a]){ arr.splice(a,1); //删除索引为a的这个元素

qq_44830054的博客 4037

JavaScript查找对象数组中某个元素的下标

关于JS的数组操作,有很多熟知的方法,比如,forEach, map, filter 等等。但是对于“查找对象数组中某个元素下标”这个需求,今天get了一个新的写法。 下面举两个例子: var array = [1,2,3,'4']; var indexOf4 = (array || []).findIndex((item) => item === '4'); console.lo...

Linda的前端开发路 4万+

JS对象数组转换,获取value、 key

js数组转对象 对象转数组 获取对象的key 或value

懒虫的博客 4878

js:数组去重和获取重复元素(普通数组和嵌套对象数组)

关于js的数组去重和获取重复元素,在项目开发中经常会遇到,这里提供个实现思路以供参考。 数组主要分为:普通数组和对象数组(嵌套对象数组)两类。 普通数组:`[1,2,3,'a','b']` 对象数组:`[{name:'zhangsan'},{name:'lisi'},{name:'wangwu'}]` 普通数组的去重,以及获取重复元素比较简单,重点是关于对象数组去重,以及获取重复元素。 对象数组去重分为两类:根据`某一属性去重`,和`去重完全相同对象`(属性属性值都相同)

Litt_White的博客 9733

js javascript 如何获取某个值在数组中的下标

js 某个值在数组中的下标javascript中知道一个数组中的一个元素的值,如何获取数组下标JS 获取数组某个元素下标 函数方法 采用prototype原型实现方式,查找元素在数组中的索引值js查找元素在数组中的位置(index值)遍历所有数组,当数组中的数值与你期望的数值相同时返回下标即可。 /* * 获取某个元素下标 * arr: 传入的数组 * obj: 需要获取下...

weixin_30632883的博客 1万+

【JavaScript】JS对象和JSON

var perStr='{"属性名":"属性值","属性名":"属性值","属性名":{},"属性名":["","",""],"属性名":[{},{},{}]}'3、创建数组并初始化:new Array("one","two",2) ,可简写: var 数组名=[元素,...]9、数组.splice(start,deleteCount,[添加的元素,...])---删除或删除添加原数组元素。1、数组1.concat(数组2)---返回数组1和数组2合并后的新数组。

想做职场小白吗? 我来教您....... 3191

js向object对象添加属性和向数组中追加元素

js向object对象添加属性和向数组中追加元素json对象添加属性json数组添加元素对象内部数组中追加元素 json对象添加属性 var jsonObj={ 'param1':11, 'param2' :22 }; jsonObj. param3='33'; json数组添加元素 var jsonstr="[{'name':'a','value':1},{'name':'b','value':2}]"; var jsonarray = eval('('+jsonstr+')

徊忆羽菲 7954

js--计算数组中重复出现元素的个数

一、有时候的根据需求计算数组中某个元素重复出现的个数 var arr = ["apple","orange","apple","orange","pear","orange"]; 计算出来重复出现的元素个数:{apple: 2, orange: 3, pear: 1} 二、代码实现 //统计一个数组中有多少个不重复的单词: // 不用reduce时: var arr = ["apple","orange","apple","orange","pear","orange"]

muzidigbig的博客 2万+
上一篇: 为什么要少用Iframe
下一篇: Java引用传递和值传递
calu
博客等级 码龄17年 11粉丝 53原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值