javascript検出配列
3134 ワード
ECMAScript 5の配列は、変数が配列であるかどうかを検出することを目的とするisAray法を導入しています.
しかし、ie 6、7などの古いブラウザにはこのような方法はありません.Zakasに書いた本の中から一つの関数を摘んで、基本的に優雅に大部分の需要を満たすことができます.
関数は以下の通りです
もちろん、より頼りない方法がありますが、一般的には効果的です.
しかし、ie 6、7などの古いブラウザにはこのような方法はありません.Zakasに書いた本の中から一つの関数を摘んで、基本的に優雅に大部分の需要を満たすことができます.
関数は以下の通りです
1 function isArray(arr) {
2 if (typeof Array.isArray === "function") {
3 return Array.isArray(arr);
4 } else {
5 return Object.prototype.toString.call(arr) === "[object Array]";
6 }
7 }
8 /*
9 *else
10 *call toString this , ,
11 * * '[object Array]', Array 。
12 * Array *toString , , Object
13 * “ ” , ** ,*
14 * “ ”。
15 */
もちろん、より頼りない方法がありますが、一般的には効果的です.
1 function isArray(arr) {
2 return typeof arr.sort() === "function";
3 }
4 /*
5 * sort , ~~
6 * , js sort ,
7 * 。
8 */