(13)Object.isExtrensible() 判断一个对象是否是可扩展的
Object.isExtrensible(object)
(14)prototype.isPrototypeOf(object) 确定一个对象是否存在于另一个对象的原型链中
function Rectangle() {
}
var rec = new Rectangle();
document.write(Rectangle.prototype.isPrototypeOf(rec));
(15)object.propertyIsEnumerable(propertyName) 确定指定的属性是否可枚举
var a = {};
a.b = 3;
console.log(a.propertyIsEnumerable(‘b’));
// 输出是true
2.2.3 Array新增方法
(1)Array.isArray() 用于确定传递的值是否是一个 Array
Array.isArray([1, 2, 3]);
// true
(2)Array.prototype.every(callback[, thisArg]) 测试数组的所有元素是否都通过了指定函数的测试。
callback:用来测试数组的每个元素的函数。调用时使用参数 (element, index, array)。返回true表示保留该元素(通过测试),false则不保留
thisArg:可选。执行 callback 时的用于 this 的值。
function isBigEnough(element, index, array) {
return (element >= 10);
}
var passed = [12, 5, 8, 130, 44].every(isBigEnough);
// passed is false
passed = [12, 54, 18, 130, 44].every(isBigEnough);
// passed is true
(3)Array.prototype.filter(callback[, thisArg]) 创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。即是过滤函数。
var a = [1, 2, 3];
var b = a.filter(function(element) {
return element > 2;
});
console.log(b);
//输出 [3]
(4)Array.prototype.forEach(callback[, thisArg]) 对数组的每个元素执行一次提供的函数。
const arr = [‘a’, ‘b’, ‘c’];