我的数组没有返回,我做错了什么吗?
这是代码:
console.log(rest[1]);
var rest = ["First Restaurant","Second Restaurant", "Third Restaurant"];
首先,考虑元素的顺序,在声明它之前你有 console.log(rest[1]) 。诸如calculate() 之类的函数将被提升到顶部,这意味着您可以安全地将其分配到var price = calculate()
第一行。
其次,你有:
var rest = ["First Restaurant", "Second Restaurant", "Third Restaurant"];
restPrice = new Array(124, 48, 268);
您会看到 restPrice 不会被分配为 a var
,您使用的是分号而不是昏迷:
var rest = ["First Restaurant", "Second Restaurant", "Third Restaurant"],
restPrice = new Array(124, 48, 268);
虽然您对变量和函数提升中的顺序有所了解,但我建议改为这样编写文件:
function calcute(bill) {
if (bill < 50) {
return bill * 0.2;
} else if (bill >= 50 && bill < 200) {
return bill * 0.15;
} else if (bill > 200) {
return bill * 0.1;
}
}
var price = calcute();
var rest = ["First Restaurant", "Second Restaurant", "Third Restaurant"];
var restPrice = new Array(124, 48, 268);
console.log(rest[1]); // Outputs: "Second Restaurant"
console.log(restPrice); // Outputs: [ 124, 48, 268 ]
var cal = calcute(restPrice[0]);
console.log('Cal: ', cal); // Outputs: Cal: 18.599999999999998
注意:函数被声明为calcute
,你的意思是calculate
?
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句