我正在制作一个显示为提示和警报的应用程序(idk叫它什么)。
但是,我的代码似乎无法在一个开关柜中运行一个开关柜,该开关柜用于将订单添加到购物车中,还用于显示购物车的内容。
表达我的问题的另一种方式:
我无法将商品添加到购物车
我无法访问我的购物车(提示只会自行关闭)
更清楚地说,我将在下面包含我的代码以及它的代码笔链接,并在我认为问题所在的位置进行注释。
非常感谢所有输入。
谢谢!
arrayCart =[];
totalBill = parseInt(0);
cartContent = arrayCart.length;
for(;;)
{
userInput = parseInt(prompt('1. Menu\n2. Your Cart\n3. Payment\n4. Exit'))
switch(userInput)
{
// This is to go to Menu
case 1:
inputPesanan = prompt('Silahkan pilih menu yang diinginkan:\n1. Paket Bento A\n2. Paket Bento B\n3. Paket Bento C')
// I think the 1st problem starts here
switch(inputPesanan)
{
case 1:
arrayCart.push('Paket Bento A - Rp20.000\n');
totalBill += parseInt(20000);
break;
case 2:
arrayCart.push('Paket Bento B - Rp25.000\n');
totalBill += parseInt(25000);
break;
case 3:
arrayCart.push('Paket Bento C - Rp30.000\n');
totalBill += parseInt(30000);
break;
}
break;
// and the 1st problem ends here
// This is to check the Cart's content
case 2:
// And I think the 2nd problem starts here
inputKeranjang = alert('Isi Keranjang Anda\n' + arrayCart + '\n\n' + 'Total Tagihan Anda: \n' + totalBIll)
break;
// and it ends here
//----------- everything under this line seems to be working fine ---------------------------------------
// This is to input how much money you would like to pay with and calculate the change or deficit (if any)
case 3:
inputPayment = parseInt(prompt('Total Tagihan Anda :\nRp' + totalBill + '\n\nBerapa uang yang Anda akan bayarkan?'));
switch(true)
{
case inputPayment<totalBill:
alert('Uang Anda kurang sebesar Rp ' + parseInt(totalBill-inputPayment));
break;
case inputPayment>totalBill:
alert('Anda akan mendapat kembalian sebesar Rp' + parseInt(inputPayment-totalBill));
break;
case inputPayment=totalBill:
alert('Uang Anda pas');
break;
}
break;
}
// This is to end the infinite loop and close the app
if(userInput === 4)
{
break;
}
}
答案 0 :(得分:0)
我不是javascript开发人员,但就switch语句而言,
它是这样工作的:
因此,无论将什么作为输入传递给switch(“ YouInput”),它都会在所有情况下进行检查,因此,如果在第一个开关中将Int作为输入传递,则假设1,那么情况1:如果传递100则将执行案例100:如果没有大小写匹配的默认值,并且如果您传递String,则说“ Yosia”,那么如果存在任何案例“ Yosia”:将会执行
因此,在您的第二个切换案例中,您正在检查案例1,案例:2,但我不认为您的“ inputPesanan”类型为int类型,因为您正在使用parseIn的其他地方都没有,所以可能会打印出来并检查您的“ inputPesanan”不会是1、2或您要查找的情况。