for (var j=0; j<2; j++){
listno=prompt("Enter Item Code","0");
listno = parseInt(listno);

if (listno > 0) {
    PRODUCT_WANT.push(PRODUCT_LIST[listno]);
    WANT_PRICE.push(PRICE_LIST[listno]);
}

else {
alert('Invalid Product Code');
}
if (quantno > 0) {
    quantno=prompt("Enter Quantity","0");
    quantno = parseInt(quantno);
    quantity.push(quantno);
}

else {
alert('Invalid Quantity');
}
}


循环有效,但是我不想设置循环计数,我希望能够将其设置为例如999,然后可以在提示符下按Cancel并完成循环

最佳答案

如果按取消,prompt将产生null。

您可能会执行以下操作:

while(listno = prompt("Enter Item Code", "0")) {
   ...
}




编辑。 prompt的结果将是在输入提示中写入的内容,如果按下了cancel,则为null。由于null在某种条件下使用时将评估为false,因此您可以在while循环中使用它,以在提示评估为true时运行一些代码,即,只要输入有效数字,就一直提示。

Demo

10-07 17:46