【发布时间】:2013-03-20 03:09:23
【问题描述】:
我有一个 json 对象“shopping_cart”,其中还有一个名为“items”的对象。
一旦用户在购物车上添加了一些新商品,我想更新 json 对象,所以 我在“项目”对象上添加了一个新项目。现在的问题是,新项目将是 添加到“项目”对象需要有某种标识符,所以每当用户 添加一个新项目:
$.extend(shopping_cart.items,{ "item_2":...
$.extend(shopping_cart.items,{ "item_3":...
等等
我尝试将下面的数字 (1) 替换为变量
$.extend(shopping_cart.items,{ "item_1": {"item_name":"fafafa", "qty":"", "price":"", "discount":"", "subtotal":""}});
类似: var new_num = 5;
$.extend(shopping_cart.items,{ "item_"+new_num: {"item_name":"fafafa", "qty":"", "price":"", "discount":"", "subtotal":""}});
所以它翻译成:
$.extend(shopping_cart.items,{ item_5
但是没有运气,无论我以何种方式尝试,变量在所有情况下都被解析为字符串。
那么有没有办法通过变量来动态创建对象呢?我也会需要 这将使用动态变量更新 item_name、数量、价格等。
非常感谢。
【问题讨论】:
-
我们实际上不使用 item_1、item_2 等。我们为此使用了一个数组。
标签: javascript json variables