javascript-objects - javascript 連想配列 - オブジェクトが配列であるかどうかを確認するには?

JavaScript 配列 検索 / javascript / arrays

文字列のリスト、または単一の文字列を受け取る関数を書こうとしています。文字列の場合は、エラーを恐れずにループ処理ができるように、1つの項目だけの配列に変換したいと考えています。

mpen



Answer #1
function whatAmI(me){ return Object.prototype.toString.call(me).split(/\W/)[2]; }

//テスト
console.log(
  whatAmI(["aiming","@"]),
  whatAmI({living:4,breathing:4}),
  whatAmI(function(ing){ return ing+" to the global window" }),
  whatAmI("going to do with you?")
);

//出力:配列オブジェクト関数文字列

とすれば、単純なif文を書けばいいわけで...。

if(whatAmI(myVar) === "Array"){
    // do array stuff
} else { // could also check `if(whatAmI(myVar) === "String")` here to be sure
    // do string stuff
}