关闭

js获取object对象的长度

时间: 2018-08-07阅读: 6127标签: 对象

我们都知道必须是具体数据类型才有长度,所以size和length都无法测量object对象的长度,那么如何计算对象的长度,即获取对象属性的个数呢?


方法一:通过Object.keys来获取

var obj = {'name' : 'fly' , 'sex' : 'male' , 'age' : '14'};
var arr = Object.keys(obj);
console.log(arr); // ['name','sex','age']
console.log(arr.length); //3


方法二:通过for in 遍历对象

var obj = {'name' : 'fly' , 'sex' : 'male' , 'age' : '14'};
function countProperties(obj){
  var count = 0;
    for(var key in obj){
        if(obj.hasOwnProperty(key)){
            count++;
        }
    }
    return count;
}
var len = countProperties(obj);
console.log(len);//结果为3

需要通过hasOwnProperty判断是否是对象自身可枚举的属性。


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/989

关闭

ES6中类和对象的注意问题

在ES中类没有变量的提升,所以必须先定义类,才能通过实例化对象,类里面的共有属性和方法一定要加this使用,类里面的this使用问题:

Window对象在前端领域的角色

在js的领域,window对象有着双重角色,既是用来访问浏览器窗口的接口,又是Global对象。也正因为此,所有全局作用域中声明的变量、函数都会变成window对象的属性和方法。

秒懂JS对象、构造器函数和原型对象之间的关系

学习JS的过程中,想要掌握面向对象的程序设计风格,对象模型(原型和继承)是其中的重点和难点,拜读了各类经典书籍和各位前辈的技术文章,感觉都太过高深,花费了不少时间才搞明白

JavaScript 判断对象中是否有某属性

判断对象中是否有某属性的常见方式总结,不同的场景要使用不同的方式。一点( . )或者方括号( [ ] )、二in 运算符、三hasOwnProperty()。三种方式各有优缺点,不同的场景使用不同的方式,有时还需要结合使用

javascript中内置对象和浏览器对象的区别是什么?

JavaScript对象是包含相关属性和方法的集合体。在 JavaScript 中,对象是数据(变量),拥有属性和方法。在javascript中对象通常包括两种类型:内置对象和浏览器对象,此外,用户还可以自定义对象。

为什么javascript中无法创建activexobject对象?

ActiveXObject()用于在IE或者IE内核下创建ActiveX控件对象,其创建的对象是基于控件的,所以创建该对象必须先安装控件。

js是面向对象还是基于对象_js面向对象的代码体现

javascript是面向对象的,还是面向过程的?基于对象是什么意思?对象: 指的是对某一类事物进行抽象,抽象出这一类事物共同的特征以及行为,也就是属性和方法

JavaScript Error对象详解

error,指程序中的非正常运行状态,在其他编程语言中称为“异常”或“错误”。解释器会为每个错误情形创建并抛出一个Error对象,其中包含错误的描述信息。

Javascript的对象拷贝

Javascript中对象拷贝的多种方式,以及探究一下深拷贝和浅拷贝。在开始之前,我先提一下一些基础知识:Javascript 的对象只是指向内存中某个位置的指针。这些指针是可变的,也就是说,它们可以重新被赋值。因此,单单复制这个指针的结果是,有两个指针指向内存中的同一块地址。

JavaScript Blob 对象解析

Blob是JavaScript内建对象,表示不可变的原始数据,类似文件的对象。blob是表示原始数据的不可变对象,这些数据不一定是javascript原生格式的,文件接口基于Blob,继承Blob功能并将其扩展为支持用户系统上的文件。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!