这是我的代码:
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
数组
我正在尝试上面的尝试,但没有成功
任何人都可以帮助我
答案 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