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

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

1.应用场景

主要用于获取数组长度, 对象成员个数, 字符串数.

2.学习/操作

Q1.Javascript怎么得到数组长度(也就是数组的元素个数)?

Q2.Javascript怎么获取对象的成员个数?

Q1 你肯定想到了array.length!? 那么我们来测试一下下面这个例子.

var a = [];

a[50] = 50;

alert(a.length);

请问数组a有多少个元素, 或者换一句话说, 数组a的长度为多少?

你会告诉我长度为1, 但浏览器会告诉你a.length为51. 有点意思吧?  //其实也好理解, 类比于PHP中的索引数组, 一切根据key的变化而定。

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

那我们再看一个例子.

请问数组a有多少个元素, 或者换一句话说, 数组a的长度为多少?

我们都知道现在数组a的元素个数为3个,但浏览器会告诉你a.length为0 !!

备注:undefinednull,与空位是不同的概念~~

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

Q2 js怎么获取对象的成员个数? 用length属性吗?

alert(a.length);

以上代码得到结果为undefined!

综上所述,

length不可靠, 要想准确获取js数组元素个数或者对象的成员个数, 我们需要自己动手写一个函数.

数组

如果不是通过[key]修改的, 而是直接声明初始化赋值/或者使用push, pop修改, 是可以使用的.

如下:

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

统一解决办法:

自定义函数, 但是有时候可能大材小用[数据类型确定, 就针对一种写解决方法即可]

如果传入数组则计算数组长度,

如果传入对象则计算对象成员数,

如果传入字符串则计算字符串的字数,

其他类型返回false

备注:

字符串与数组的相似性仅此而已。实际上,无法改变字符串之中的单个字符, 

length属性返回字符串的长度,该属性也是无法改变的。 所以可以字符串可以使用length属性来取值

//方式一

// 方式二:

现在在测试一下刚才的例子?

var a = [];

a[50] = 50;

alert(count(a));

得到结果为2

        var a = [];

        a[‘age’] = ’18’;

        alert(count(a));

得到结果为3.

        alert(count(a));

得到结果为2

补充

如果是数组, 可以使用

var arr = [0, 1, 50];

var count = arr.filter(function(a) {

                return !!a; //注意判断条件

            }).length;

但是: 因为有个元素为0 , 获取的长度为2, 所以要留心判断条件

后续补充

3.问题/补充

TBD

4.参考

https://www.cnblogs.com/sunnywindycloudy/p/7382226.html  //js获取数组长度,对象成员个数、字符串数

后续补充

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213790.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午5:38
下一篇 2026年3月18日 下午5:38


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号