Javascript 它赢了';“我不认识你”;INTQUOTE;值在键入数字时,仅假定其全部为真=/ 函数checkQuantity() { 功能无电荷(输入量){ 如果(输入数量>100){ 返回true; } 如果(数量100){ 返回true; } 如果(数量=100) 匈牙利符号已经死了,让它安息吧

Javascript 它赢了';“我不认识你”;INTQUOTE;值在键入数字时,仅假定其全部为真=/ 函数checkQuantity() { 功能无电荷(输入量){ 如果(输入数量>100){ 返回true; } 如果(数量100){ 返回true; } 如果(数量=100) 匈牙利符号已经死了,让它安息吧,javascript,Javascript,您的代码有一些错误 检查这个 函数checkQuantity(){ 功能无电荷(输入量){ 如果(输入数量>100){ 返回true; } 如果(数量=100) 匈牙利符号已经死了,让它安息吧 所有这些问题都解决了: function checkQuantity() { function noCharge(intQuantity) { if (intQuantity > 100) { return true; }

您的代码有一些错误

检查这个

函数checkQuantity(){
功能无电荷(输入量){
如果(输入数量>100){
返回true;
}
如果(数量<100){
返回false;
}
返回true;
}
var amount=noCharge(parseInt(提示(“请输入灯泡数量”);
如果(金额==真){
提醒(“您的灯泡很快就会到,不收送货费”)
}
否则如果(金额==假){
提醒(“您的灯泡很快就会到达。将收取5.99英镑的送货费”)
}
否则{
警报(“请输入金额”)
}
}
检查数量();
两个明显的问题(好吧,两件事合作导致了同一个bug):

  • 你从来没有打过电话
    noCharge
    。与其说是
    if((intQuantity)==true)
    ,不如说是
    if(noCharge(intQuantity)==true)
    (或者更好地说是
    if(noCharge(intQuantity))
    …见下文)
  • (intQuantity)
    将是真实的,只要它不是
    false
    null
    未定义
    或0。在你的情况下,这是绝大多数时间
还有一些风格说明:

  • 如果返回的是布尔值,则不必将其与任何对象进行比较。与其说
    if(noCharge(intQuantity)=true
    ,不如说
    if(noCharge(intQuantity))
    。要查看是否有错误,请使用
    操作符,如
    if(!noCharge(intQuantity))
  • 您也不必进行两次比较。布尔值可以是真的,也可以是假的。
    else if…
    部分可以替换为
    else
    ,您可以完全删除第三部分
  • 您在
    noCharge
    中的规则比必须的复杂。当前函数在数量至少为100时返回true。由于
    =
    涵盖了这一点,您可以将代码减少到一行:
    返回(intQuantity>=100)
  • 匈牙利符号已经死了,让它安息吧
所有这些问题都解决了:

function checkQuantity() {

    function noCharge(intQuantity) {
        if (intQuantity > 100) {
            return true;
        }

        if (intQuantity < 100) {
            return false;
        }

        return true;
    }

    var amount = noCharge(parseInt(prompt("Please enter the quantity of light bulbs", "")));
    if (amount == true) {
        alert("Your light bulbs will arrive shortly. There is NO delivery charge")
    }
    else if (amount == false) {
        alert("Your light bulbs will arrive shortly. There will be a  delivery charge of £5.99")
    }
    else {
        alert("Please enter an amount")
    }
}

checkQuantity();

就我个人而言,我甚至不会为检查某个值是否至少为100的函数而烦恼……但如果规则变得更复杂,我可以看到它的用处。

javscript不应该是“javascript”吗?谢谢你注意到这一点,我很抱歉它说intQuantity也没有定义=/这是你的确切代码的真实副本吗?非常感谢,你不知道我有多感激你
function checkQuantity() {

    function noCharge(intQuantity) {
        if (intQuantity > 100) {
            return true;
        }

        if (intQuantity < 100) {
            return false;
        }

        return true;
    }

    var amount = noCharge(parseInt(prompt("Please enter the quantity of light bulbs", "")));
    if (amount == true) {
        alert("Your light bulbs will arrive shortly. There is NO delivery charge")
    }
    else if (amount == false) {
        alert("Your light bulbs will arrive shortly. There will be a  delivery charge of £5.99")
    }
    else {
        alert("Please enter an amount")
    }
}

checkQuantity();
 function checkQuantity() {
    function noCharge(quantity) {
        return (quantity >= 100);
    }

    var quantity = parseInt(prompt("Quantity:", ""));
    if (noCharge(quantity)) {
        alert("No delivery charge");
    } else {
        alert("Delivery charge of $5.99");
    }
}