js获取数组元素个数和对象成员数
Javascript怎么得到数组长度(也就是数组的元素个数)?Javascript怎么获取对象的成员个数?你肯定想到了array.length!? 那么我们来测试一下下面这个例子.
Javascript怎么获取对象的成员个数?
你肯定想到了array.length!? 那么我们来测试一下下面这个例子.
- <script type="text/javascript">
- var a = [];
- a[50] = 50;
- alert(a.length);
- </script>
有点意思吧? 那我们再看一个例子.
- <script type="text/javascript">
- var a = [];
- a['age'] = '18';
- a['sex'] = 'Male';
- a['site'] = 'http://www.genban.org';
- alert(a.length);
- </script>
我们都知道现在数组a的元素个数为3个,但浏览器会告诉你a.length为0 !!
js怎么获取对象的成员个数? 用length属性吗?
- <script type="text/javascript">
- var a = {'age':30,'sex':'male'};
- alert(a.length);
- </script>
综上所述,length不可靠,要想得到准确的数组元素个数或者对象的成员个数,我们需要自己动手写一个函数.
如果传入数组则计算数组长度,如果传入对象则计算对象成员数,如果传入字符串则计算字符串的字数.其他类型返回false
- <script type="text/javascript">
- function count(o){
- var t = typeof o;
- if(t == 'string'){
- return o.length;
- }else if(t == 'object'){
- var n = 0;
- for(var i in o){
- n++;
- }
- return n;
- }
- return false;
- }
- </script>
- <script type="text/javascript">
- var a = [];
- a[50] = 50;
- alert(count(a));
- </script>
- <script type="text/javascript">
- var a = [];
- a['age'] = '18';
- a['sex'] = 'Male';
- a['site'] = 'http://www.genban.org';
- alert(count(a));
- </script>
- <script type="text/javascript">
- var a = {'age':30,'sex':'male'};
- alert(count(a));
- </script>
特别声明:以上内容(如有图片或视频亦包括在内)为本平台用户上传并发布,本平台仅提供信息存储服务。举报




