如何在jQuery中存储密钥

时间:2015-08-03 06:31:59

标签: javascript php jquery arrays

这是我的代码:

function addtocart(id,price) {
    var qty = $("#txt_qty" + id).val();
    var qty1 = new Array();
if (qty == '' || qty == 0) {
    alert('Please Enter Quantity');
    $("#txt_qty" + id).focus();
    return false;
}
if (qty != '' && type != '') {
    proid.push(id);
    var text = 'qty'+id+'='+qty;
    var keyValuePair = text.replace(/ /g,'').split('=');
    qty1.push([keyValuePair[0]] = [keyValuePair[1]]);
}         

我需要将密钥存储在qty1数组中,我已经将值称为qty

如何在qty1数组

中动态存储密钥

我正在尝试上面的尝试,但没有成功

任何人都可以帮助我

3 个答案:

答案 0 :(得分:0)

如果您已经获得keyvaluepair[0]keyvaluepair[1]的数据值,请尝试使用:

var myObj = {}; // declare obj container
myObj[keyvaluepair[0]] = keyvaluepair[1]; // set key and value based on your variable
qty1.push(obj); // finally push obj into your qty1(array) variable

这只是一种替代方案,您可以尝试使用 @Disha V提供的解决方案。

答案 1 :(得分:0)

试试这个:您需要针对特定​​密钥设置值,请参阅下面的代码。还要定义像belwo

这样的新地图
var qty1 =  new Object();//create new map and not array

qty1[keyValuePair[0]] = keyValuePair[1];

从代码

下面的地图使用中再次读取值
var value =  qty1[keyValuePair[0]];

答案 2 :(得分:-1)

关联数组(名称索引)在javascript / jquery中被视为对象。所以你可以像这样使用

var qty1= {"key1":"value1", "key2":"value2", "key3":"value3"};
var test = qty1.key1;             // "value1" will be returned

或者您可以使用这样的数组,但它将在对象中转换为

var qty1= [];
qty1["key1"] = "value1";
qty1["key2"] = "value2";
qty1["key3"] = "value3";
var test = qty1[0];             // qty1[0] will return undefined
var test2 = qty1.key1;          // "value1" will be returned