2012-09-06 23 views
0

我有一些單選按鈕值做了一個數組,說myArray = ["1","40","35"];如何檢查和替換數組中的值?

每個值都有他的同行說,例如1 =「男」,2 =「女」,40 =「紅頭髮」。

什麼是最好的方法來建立另一個數組,其中每個值得到他的對手?

這樣類似的東西myBrandNewArray = ["men","red hairs", …];

我要我的夫婦存入變量一些維護,比如

var "1" = "men", "2" = "women", … ; 

,但我不知道這是否是一個好辦法...

PS 。甚至指點我一些資源會很好。謝謝。

+0

「1」=「男」或男=「1」....? –

+0

第一個,我的數組中填充了數字字符串 – Daniele

回答

0

好,最後我做到這一點:有

var numericalArray = ["1","50","45", …]; 

var couples = { "50" : "homme",  
      "1" : "femme", 
      "85" : "court",  
     … 
       }; 

我可以調用這個並獲得與連接的新數組值:

function assignValues(numericalArray) { 

var verbalArray = []; 

for (var i=0; i<numericalArray.length; i++) { 

    var value = numericalArray[i]; 

    verbalArray.push(couples[value]); // right, I can't check if the values exists 

} 

console.log('here my new array:', verbalArray); 


} 

感謝我指出了一個對象的使用。

2

我會保持價值 hash = { '1': 'Men', '2': 'Women' ... }

然後[ '1', '2', ... ].map(function(v) { return hash[v]; });

IE9-不會Accpet頭這一點,在這種情況下,你可能只是在重複一個循環

0

我想的哈希此功能

myArray = ["1","40","35"]; 
myBrandNewArray = myArray.map(function(element){ /* your code to get the right array 8/ }) 

來源:http://www.tutorialspoint.com/javascript/array_map.htm

也有這個功能,獲取更多相關信息的一個jQuery(跨瀏覽器)的版本看起來herejQuery.map(myArray, function(value, index){ /*....*/ })

0

使用對象:

var val = { 
    1: "men", 
    40: "red hairs" 
}; 

alert(val[1]); 
alert(val[2]) 

;

1

您可以創建這樣一個對象:

var arr = { '1' : 'men', '2' : 'women' }

您可以隨時訪問此輕鬆,如:arr['1'] == 'men',如果你想從現有陣列創建

myArray & myBrandNewArray

喲ü可以做這樣的事情

var arr = {}; 
foreach (var i in myArray) { 
    arr[myArray[i]] = myBrandNewArray[i]; 
} 
+0

但是,這不我通過索引關聯它們?例如,我可能會或可能不會在0位置有「1」,或者根本沒有......只是好奇而沒有嘗試過...... – Daniele

+0

是啊!正確,但是你需要明確地將它們設置在循環的結構之外。 – 2012-09-06 11:19:54