Javascript 在JS中如何将变量值舍入为整数?
我正在创建一个以重量、位置和数量为参数的计算器。我将价格设置为键值对,当输入权重时,它将迭代对象数组,找到与它相等的键值,并使用该值显示价格消息。我遇到的问题是,无论何时输入的数字不是整数,都不会显示任何内容。以下是我的代码:Javascript 在JS中如何将变量值舍入为整数?,javascript,reactjs,math,Javascript,Reactjs,Math,我正在创建一个以重量、位置和数量为参数的计算器。我将价格设置为键值对,当输入权重时,它将迭代对象数组,找到与它相等的键值,并使用该值显示价格消息。我遇到的问题是,无论何时输入的数字不是整数,都不会显示任何内容。以下是我的代码: const calculateRate = () => { let price let ausWeight = { 1: 19, 2: 25, 3: 25, 4: 28, 5: 28, 6: 31.5, 7:
const calculateRate = () => {
let price
let ausWeight = {
1: 19, 2: 25, 3: 25, 4: 28, 5: 28, 6: 31.5, 7: 35, 8: 38.5, 9: 42, 10: 45.5, 11: 49, 12: 52.5, 13: 56, 14: 59.5,
15: 63, 16: 66.5, 17: 70, 18: 73.5, 19: 77, 20: 80.5};
let inputWeight = Object.keys(ausWeight)
let inputValue = Object.values(ausWeight)
let x = Math.floor(weight);
console.log(x)
for (var i = 0; i < inputWeight.length; i++){
if (x === inputWeight[i] && region.value === 'Australia') {
price = `Estimated delivery cost is $${inputValue[i] * quantity}`;
setShowResults(true)
setPrice(price);
}
}
}
const calculateRate=()=>{
出租价格
让重量={
1: 19, 2: 25, 3: 25, 4: 28, 5: 28, 6: 31.5, 7: 35, 8: 38.5, 9: 42, 10: 45.5, 11: 49, 12: 52.5, 13: 56, 14: 59.5,
15: 63, 16: 66.5, 17: 70, 18: 73.5, 19: 77, 20: 80.5};
让inputWeight=Object.keys(ausWeight)
让inputValue=Object.values(ausWeight)
设x=数学地板(重量);
console.log(x)
对于(变量i=0;i
如您所见,我将x设置为等于Math.floor()四舍五入的权重,但没有得到输出。您还可以看到,我正在将x的值记录到控制台中,当我通过开发工具查看它时,它给出了我期望的结果。对于上下文,这是一个功能性的react组件,其权重由setState()设置
任何关于如何解决这个问题的想法都将不胜感激。谢谢。您只需将字符串与数字进行比较 通过使用,可以获得字符串数组。但后来你采取了严格的比较 要克服这个问题,需要将字符串值转换为数字
x === +inputWeight[i]
当然就这么简单。谢谢你,我以后会知道的。