フロントエンド - アレイコレクション

1.検出アレイ方法

  1.Array.isArray(); es5
    
  2. instanceof Array
  3.arr.constructor//Array

​  4. toString.call([]);//”[object Array]


2.Array一般的な方法


shift(); //删除并返回数组的第一个元素

unshift(); //向数组的开头添加一个或更多元素,并返回新的长度

pop(); 		//删除并返回数组的最后一个元素

push(); 	//向数组的末尾添加一个或更多元素,并返回新的长度

concat(); 	//连接两个或更多的数组,并返回结果

reverse(); 	//颠倒数组中元素的顺序

splice(); 	//删除元素,并向数组添加新元素

slice(); 	//从某个已有的数组返回选定的元素

等方法

3.配列やオブジェクトを区別する方法

1、从原型入手,Array.prototype.isPrototypeOf(obj); 
 利用isPrototypeOf()方法,判定Array是不是在obj的原型链中,
 如果是,则返回true,否则false。Array.prototype.isPrototype([]) //true

2、也可以从构造函数入手,利用对向的constructor属性

3、根据对象的class属性(类属性),跨原型链调用toString()方法。
Object.prototype.toString.call(Window);

4、Array.isArray()方法。

4.どのように検出器アレイのデータ型

方法一、判断其是否具有“数组性质”,如slice()方法。
可自己给该变量定义slice方法,故有时会失效 
方法二、obj instanceof Array 在某些IE版本中不正确 
方法三、toString.call([]);//”[object Array]
方法四、

方法一二皆有漏洞,在ECMA Script5中定义了新方法Array.isArray(), 
保证其兼容性,
最好的方法如下:
 if(typeof Array.isArray==="undefined"){ 
 Array.isArray = function(arg){ 
 return Object.prototype.toString.call(arg)==="[object Array]"
 }; 
 }
公開された68元の記事 ウォンの賞賛0 ビュー1277

おすすめ

転載: blog.csdn.net/zmmsdk/article/details/104214144