Đây là những gì tôi đang cố gắng xây dựng thông qua JavaScript trong dấu chấm hoặc [] ký hiệu:Gán giá trị cho JSON đối tượng trong Javascript
var shoppingCart = {
'item1' : {
'description' : 'This is item #1',
'price' : 10,
'quantity' : 1,
'shipping' : 0,
'total' : 10
}
};
Bây giờ nếu 'item1' là biến tên itemName
.
này hoạt động:
var shoppingCart = {};
shoppingCart[itemName] = itemName;
alert(shoppingCart.item1);
nào trả item1
Nhưng điều này không làm việc:
1 var shoppingCart = {};
2 shoppingCart[itemName]['description'] = 'This is Item #1';
JS chỉ chết ở dòng 2, tại sao? và làm cách nào để gán giá trị mô tả cho 'mô tả'?
tôi sẽ làm điều đó như thế này:
var shoppingCart = {
itemName : {
'description' : description,
'price' : price,
'quantity' : quantity,
'shipping' : shipping,
'total' : total
}
};
... nhưng nó làm cho chính nghĩa itemName
thay vì item1
.
cảm ơn phản hồi nhanh – phpKid
Ngoài ra 'shoppingCart [itemName] ['description']' tương đương với 'shoppingCart [itemName] .description'. Bạn chỉ cần truy cập các thuộc tính với '[]' khi truy cập chúng một cách động 'obj [propNameString]' hoặc khi nó chứa các ký tự không hợp lệ cho dấu chấm notaton 'obj ['some-prop-name']' –
Có thnx, đó là những gì tôi đọc ở khắp mọi nơi, nhưng điều quan trọng là 'shoppingCart [itemName] = {};' Tôi hiểu các đối tượng ngày càng nhiều hơn mỗi ngày! – phpKid