-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Array.length
返回或设置(截断、扩展,扩展后自动获得undefined值)数组的元素个数。但是并不一定表示定义项目个数
var letter = ['a', 'b', 'c']
letter[25] = 'z'
console.log( Object.keys(letter) ) // ['a', 'b', 'c', 'z']
console.log( letter.length ) // 26创建数组
-
var arr = []// javascript: the goods parts 推荐用法 -
var arr = new Array()// 没有参数,创建实例 ,,, [], length = 0 -
var arr = new Array(5)// 一个参数,指定数组的长度 ,,, [undefined × 5], length = 5 -
var arr = new Array(5,4)// 多个参数,作为数组的初始值 ,,, [5,4], length = 2 -
var arr = Array.of(5)// 一个参数,创建单项值的数组 ,,, [5], length = 1 -
var arr = Array.of(5,4)// 多个参数,创建多项值的数组 ,,, [5,4], length = 2 -
var arr = RegExp.exec(str) -
var arr = String.match(regexp) -
var arr = String.split -
var arr = Object.keys(obj)
判断数组
arr instanceof Array
instanceof运算符用来测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性
创建一个(构造)函数自动获得一个prototype属性,此属性指向函数的原型对象
// 原型对象自动获得一个 constructor 属性,此属性指向 prototype 属性所在函数的指针
当调用构造函数创建一个实例后,此实例内部将包含一个指针 proto,指向构造函数的原型对象,此连接存在于 实例与构造函数的原型对象 之间,而非实例与构造函数
Array.prototype.isPrototypeOf(arr)
isPrototypeOf() 方法用于测试一个对象是否存在于另一个对象的原型链上
Object.prototype.toString.call(arr) == "[object Array]"
没啥好说的,Object.toSring() 就是返回 [object type] (type 为对象类型), 自定义的构造函数返回 [object Object]
arr.constructor == Array
constructor 用来检测对象的类型,(系统级引用类型、自定义的构造函数)
对象是引用类型的一个实例,引用类型是一种数据结构,用来将数据和功能组织在一起,通常也成为 类 / 对象定义(描述的是一类对象所具有的属性和方法)