如何在javascript(而不是值)中更改数组索引

时间:2014-03-28 06:07:36

标签: javascript html jsp

我需要更改javascript中的索引值

让我们说

var fruits = ["Banana", "Orange", "Apple", "Mango"];

索引为0-香蕉,1-Orange,2-Apple,3-Mango

我想要的是改变这些指数值,例如345-Banana,346-Orange,347-Apple,348-Mango。

让我知道如果有任何快速的方法,它会减少我的一些转换代码..否则我必须跟踪索引(0,1,2,3)到值(345,346 ... )

我将索引值存储在我的数据库中,数组值只是显示在UI上(就像选择框一样)

3 个答案:

答案 0 :(得分:2)

那你为什么要使用Array。使用Map并提供任何自定义键(索引)值。

var map = new Object(); // or var map = {};
map[myKey1] = myObj1;
map[myKey2] = myObj2;

function get(k) {
    return map[k];
}

或者如果不想使用Map,请不要更改索引,只需按

设置输入字段的值即可
<input type="" value="<any base value like 350>+index"/>

我认为这可以提供帮助。

答案 1 :(得分:1)

你需要使用关联数组。

var fruits= new Array();
fruits['345'] = 'banana';
fruits['346'] = 'Orange';
fruits['347'] = 'Apple';
fruits['348'] = 'Mango'; 

for (var i in fruits) {
    alert('index is: ' + i + ', value is: ' + fruits[i]);
}

答案 2 :(得分:0)

使用enum like:

var fruits = {345:&#34; Banana&#34;,346:&#34; Orange&#34;,347:&#34; Apple&#34;,348:&#34; Mango&#34; };

的console.log(水果[345]);