ここで検索しました: http://w3schools.com/jsref/default.aspしかし、この機能を実行する便利な方法が見つかりませんでした。array がある場合var arrayOfStrings = ["20","10","30","100"]
、この配列内の各文字列からすべての引用符 (") をループせずに削除する簡単な方法はありますか?
私は本質的にこれを作成したい:var arrayOfNumbers = [20,10,30,100]
ありがとう
ここで検索しました: http://w3schools.com/jsref/default.aspしかし、この機能を実行する便利な方法が見つかりませんでした。array がある場合var arrayOfStrings = ["20","10","30","100"]
、この配列内の各文字列からすべての引用符 (") をループせずに削除する簡単な方法はありますか?
私は本質的にこれを作成したい:var arrayOfNumbers = [20,10,30,100]
ありがとう
数値変換が必要な場合は、次のようにすることができます...
var arrayOfNumbers = arrayOfStrings.map(Number);
この.map()
メソッドは、指定した関数の戻り値が入力された新しい配列を作成します。
組み込みNumber
関数は与えられた最初の引数を取り、プリミティブ数に変換するため、 のコールバックとして非常に便利です.map()
。16 進数表記を有効な数値として解釈することに注意してください。
コールバックと同じことを行う別の組み込み関数はparseFloat
.
var arrayOfNumbers = arrayOfStrings.map(parseFloat)
ただし、各メンバーの現在のインデックスもコールバックに渡し、その番号を基数パラメーターとして使用しようとするため、このparseInt
関数は機能しません。.map()
parseInt
デモ: http://jsfiddle.net/UDWvH/
[
20,
10,
30,
100
]
次のように試すことができます:
for(var i = 0; i < myArray.length; i++)
{
myArray[i] = parseInt(myArray[i], 10);
}
parseInt 関数を見てください。
JSON.parseをサポートするブラウザーの場合:
var arr = ["20","10","30","100"];
var newArr = JSON.parse("[" + arr.join() + "]");
console.log(typeof arr[0]); //string
console.log(typeof newArr[0]); //number
何もする必要はありません。JavaScript の二重引用符は、その中のデータが文字列であることを示す識別子です。これは、それらが配列またはデータ自体の一部ではないことを意味します。
標準の For ループを使用してループできます。