簡體   English   中英

如何向 Object 添加元素?

[英]How to add element to an Object?

JavaScript:

let stock = {
1001: {product: 'Chocolates', cost: 10, quantity: 0},
1002: {product: 'Biscuits', cost: 10, quantity: 0},
1003: {product: 'Bread', cost: 20, quantity: 0},
1004: {product: 'Milk', cost: 25, quantity: 0},
1005: {product: 'Curd', cost: 20, quantity: 0},

}

因此,在 JavaScript 方面,我聲明了一個 object,“庫存”。 現在使用 HTML 的提示符作為輸入,我想添加輸入代碼、產品、成本和數量。

HTML:

<body>
<h1>My Shop</h1>
<label for="numberOfNewProducts" id="numberOfNewProductsLabel">Enter the Number of New Products to be Added: </label>
<br>
<input type="text" id="numberOfNewProducts" value="" placeholder="Enter the number of new Products to be added">
<button type="button" class="btn btn-default" id="addButton" onclick="addProduct()">Add</button>
<script src="stock.js"></script>
<script>
    function addProduct(){
        let numberOfNewProducts = document.getElementById("numberOfNewProducts").value;
        Number(numberOfNewProducts);
        number = 0;
        while(number < numberOfNewProducts){
            number++;
            let inputCode = prompt("Entert the Code you want to give to the New Product: ");
            Number(inputCode);
            let inputProductName = prompt("Enter the Name of the New Product: ");
            let inputProductCost = prompt("Enter the Cost of the New Product: ");
            Number(inputProductCost);
            let inputProductQuantity = prompt("Enter the Quantity of the New Product: ");
            Number(inputProductQuantity);
            stock[inputCode].product = inputProductName;
            stock[inputCode].cost = inputProductCost;
            stock[inputCode].quantity = inputProductQuantity;
            console.log(stock);
        }
    }
</script>

while 循環的結尾也有點令人困惑。 如何將輸入代碼和所有產品、成本和數量添加到 object,“庫存”?

只需創建一個 object ,如:

var obj = {product:"Cookie",cost:10,quantity:0};

然后添加到stock中,例如:

stock[inputCode] = obj;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM