簡単な JavaScript の質問:
(50=50; 49=49; 143=143; 4005=4005; ...)
を (50; 49; 143; 4005; ...) に変換したい配列があります。
name=value ペアでは、名前は常に値と同じになります。
常に数値になります (ただし、長さはさまざまです)。
.split を使用して頭を悩ませることはできません
ありがとう
簡単な JavaScript の質問:
(50=50; 49=49; 143=143; 4005=4005; ...)
を (50; 49; 143; 4005; ...) に変換したい配列があります。
name=value ペアでは、名前は常に値と同じになります。
常に数値になります (ただし、長さはさまざまです)。
.split を使用して頭を悩ませることはできません
ありがとう
あなたがこのような配列を持っていることを意味すると仮定します:
var arr = ['50=50;','49=49;','143=143;','4005=4005;'];
次に、次split
のように使用できます。
var newArr = [], ii;
for (ii = 0; ii < arr.length; ii += 1) {
newArr.push(parseInt(arr[ii].split('=')[0], 10));
}
これにより、次のnewArr
ようになります。
var newArr = [50, 49, 143, 4005];
動作する方法split
は、区切り文字列に基づいて文字列を配列に分割することです。この例では'='
、区切り文字として使用しているため、次のような配列になります。
['50', '50;']
['49', '49;']
// etc.
次に、最初の要素にインデックスを付け、それをに渡してparseInt
数値を生成し、push
数値要素のみを含む新しい配列に渡します。
これが実際の例です。
実際のJavaScript配列ではなく、配列に変換したい文字列から始めている場合は、前の手順の前にこの手順を追加して、元の配列を取得します。
var str = '(50=50; 49=49; 143=143; 4005=4005;)';
var arr = str.replace(/\(|\)|;/g, '').split(' ');