是否可以编写一个 returns 三元运算符中的值的整个方法?
is it possible to write a whole method that returns a value in ternary operator?
在javascript中的三元运算符中可以做这种代码吗?如果是,我想我做错了,当我尝试下面的代码时,我只写了 return 整个 function(){}
方法
let products = [
{
price: 2.6,
quantity: 5,
},
{
price: 5.9,
quantity: 5,
},
{
price: 2.3,
quantity: 5,
},
{
price: 4.9,
quantity: 5,
}
];
let sumtotal = products.length > 1 ? function(){
let total = 0;
for(const { price, quantity } of products) {
total += (price * quantity);
}
return parseFloat(total).toFixed(2);
} : function() {
let total = (products[0].price * products.quantity);
return parseFloat (total).toFixed(2);
};
console.log(sumtotal);
我希望这会 return 像输出一样的实际值是 Integer
或 float
。
“我希望这会 return 像输出一样的实际值是整数或浮点数。”
您可以将您的函数定义包裹在括号中,然后立即用 ()
调用它。一个 IIFE。你已经 return
所以你在这方面做得很好。
有变化:
let sumtotal = products.length > 1 ? (function(){
let total = 0;
for(const { price, quantity } of products) {
total += (price * quantity);
}
return parseFloat(total).toFixed(2);
})() : (function() {
let total = (products[0].price * products.quantity);
return parseFloat (total).toFixed(2);
})();
有了 IIFE,函数将 运行 在它们所在的位置。我没有检查您代码的任何其他部分,因此此解决方案仅适用于“return 实际值,如输出将是整数或浮点数”部分。
在javascript中的三元运算符中可以做这种代码吗?如果是,我想我做错了,当我尝试下面的代码时,我只写了 return 整个 function(){}
方法
let products = [
{
price: 2.6,
quantity: 5,
},
{
price: 5.9,
quantity: 5,
},
{
price: 2.3,
quantity: 5,
},
{
price: 4.9,
quantity: 5,
}
];
let sumtotal = products.length > 1 ? function(){
let total = 0;
for(const { price, quantity } of products) {
total += (price * quantity);
}
return parseFloat(total).toFixed(2);
} : function() {
let total = (products[0].price * products.quantity);
return parseFloat (total).toFixed(2);
};
console.log(sumtotal);
我希望这会 return 像输出一样的实际值是 Integer
或 float
。
“我希望这会 return 像输出一样的实际值是整数或浮点数。”
您可以将您的函数定义包裹在括号中,然后立即用 ()
调用它。一个 IIFE。你已经 return
所以你在这方面做得很好。
有变化:
let sumtotal = products.length > 1 ? (function(){
let total = 0;
for(const { price, quantity } of products) {
total += (price * quantity);
}
return parseFloat(total).toFixed(2);
})() : (function() {
let total = (products[0].price * products.quantity);
return parseFloat (total).toFixed(2);
})();
有了 IIFE,函数将 运行 在它们所在的位置。我没有检查您代码的任何其他部分,因此此解决方案仅适用于“return 实际值,如输出将是整数或浮点数”部分。