第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

在函數(shù)中使用后保留參數(shù)的值

在函數(shù)中使用后保留參數(shù)的值

至尊寶的傳說 2022-08-18 16:00:36
我正在學(xué)習(xí)Javascript,我正在做一個(gè)小程序,根據(jù)你的賬單金額和你必須支付的總金額(賬單+小費(fèi))計(jì)算服務(wù)員小費(fèi)。這將返回 2 個(gè)數(shù)組,第一個(gè)數(shù)組包含按賬單支付的提示,第二個(gè)數(shù)組包含要支付的總計(jì)。代碼如下:var myBillsArray = [];var numberOfBills = parseInt(prompt('Please enter the number of bills.'));for(i=0; i<numberOfBills; i++){  myBillsArray[i] = parseInt(prompt(`Insert your bill number ${i+1}`));}holidayBills(myBillsArray);function holidayBills(billsArrays){  var tipsArray =  [];  var finalBillArray = [];    tipsArray = calculateTips(billsArrays);  finalBillArray = calculateFinalBill(myBillsArray, tipsArray);  console.log(tipsArray);  console.log(finalBillArray);}function calculateTips(arrayOfBills){  for(i=0; i<arrayOfBills.length; i++){    if(arrayOfBills[i] < 50){      arrayOfBills[i] *= 0.20;    }else if(arrayOfBills[i] >= 50 && arrayOfBills[i] < 200){      arrayOfBills[i] *= 0.15;    }else{      arrayOfBills[i] *= 0.10;    }  }  return arrayOfBills;}function calculateFinalBill(arrayOfBills, arrayOfTips){  var finalBill = [];  for(i=0; i<arrayOfBills.length; i++){    finalBill[i] = arrayOfBills[i] + arrayOfTips[i];  }  return finalBill;}但我遇到的唯一問題是,當(dāng)我添加賬單+小費(fèi)時(shí),賬單值與小費(fèi)值相同。我認(rèn)為這是一個(gè)范圍問題,但我不知道在哪里。如果你想知道為什么我使用而不是它,那是因?yàn)榫毩?xí)要求我這樣做。varlet
查看完整描述

2 回答

?
BIG陽

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊

您的問題是,當(dāng)您計(jì)算提示時(shí),您正在修改 的元素。發(fā)生這種情況是因?yàn)閿?shù)組在 JavaScript 中是通過引用傳遞的,這意味著這不是包含 的所有元素的新數(shù)組,而是相同的數(shù)組。因此,當(dāng)您將其稱為 時(shí),您對它所做的任何修改都會顯示出來。myBillsArrayarrayOfBillsmyBillsArraymyBillsArray


要解決此問題,您可以執(zhí)行以下操作:


function calculateTips(arrayOfBills){

  var myTips = [];

  for(i=0; i<arrayOfBills.length; i++){

    if(arrayOfBills[i] < 50){

      myTips[i] = arrayOfBills[i] * 0.20;

    }else if(arrayOfBills[i] >= 50 && arrayOfBills[i] < 200){

      myTips[i] = arrayOfBills[i] * 0.15;

    }else{

      myTips[i] = arrayOfBills[i] * 0.10;

    }

  }

  return myTips;

}


查看完整回答
反對 回復(fù) 2022-08-18
?
Qyouu

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊

您可以將計(jì)算提示函數(shù)更改為以下內(nèi)容。使用新數(shù)組保留函數(shù)的結(jié)果


function calculateTips(arrayOfBills){

    var tips = []


  for(i=0; i<arrayOfBills.length; i++){

    if(arrayOfBills[i] < 50){

      tips[i] = arrayOfBills[i] * 0.20;

    }else if(arrayOfBills[i] >= 50 && arrayOfBills[i] < 200){

      tips[i] = arrayOfBills[i] * 0.15;

    }else{

      tips[i] = arrayOfBills[i] * 0.10;

    }

  }

  return tips;

}


查看完整回答
反對 回復(fù) 2022-08-18
  • 2 回答
  • 0 關(guān)注
  • 178 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號