eg:var obj = {}
var b = function () {
for (var key in obj) {
return false
}
return true
}
console.log(b()) // true
2、对象序列化(将对象转换为字符串)后进行判断
eg:var data = {}
var b = (JSON.stringify(data) == "{}")
console.log(b) // true
3、jquery的isEmptyObject()方法
eg: var data = {}
var b = $.isEmptyObject(data)
console.log(b) // true
4、Object.getOwnPropertyNames()方法
eg: var data = {}
var arr = Object.getOwnPropertyNames(data)
console.log(arr.length == 0) // true
5、ES6中的Object.keys()方法
eg: var data = {}
var arr = Object.keys(data)
console.log(arr.length == 0) // true
什么是对象
JavaScript 中的所有事物都是对象,如:字符串、数值、数组、函数等,每个对象带有属性和方法。
对象的属性:反映该对象某些特定的性质的,如:字符串的长度、图像的长宽等;
对象的方法:能够在对象上执行的动作。例如,表单的“提交”(Submit),时间的“获取”(getYear)等;
JavaScript 提供多个内建对象,比如 String、Date、Array 等等,使用对象前先定义,如下使用数组对象:
var objectName =new Array()//使用new关键字定义对象或者
var objectName =[]
访问对象属性的语法:
objectName.propertyName如使用 Array 对象的 length 属性来获得数组的长度:
var myarray=new Array(6)//定义数组对象var myl=myarray.length//访问数组长度length属性
以上代码执行后,myl的值将是:6
访问对象的方法:
objectName.methodName()如使用string 对象的 toUpperCase() 方法来将文本转换为大写:
var mystr="Hello world!"//创建一个字符串var request=mystr.toUpperCase() //使用字符串对象方法
以上代码执行后,request的值是:HELLO WORLD!
这是Array对象的一个静态函数,用来判断一个对象是不是数组
返回数组的一个子集,回调函数用于逻辑判断是否返回,返回true则把当前元素加到返回数组中,false则不加
新数组只包含返回true的值,索引确实的不包括,原数组保持不变。
遍历数组,调用回调函数,将数组元素组合成一个值,reduce从索引最小值开始,reduceRight反向,方法有两个参数