gpt4 book ai didi

JavaScript 温度转换函数不起作用

转载 作者:行者123 更新时间:2023-11-30 17:47:40 25 4
gpt4 key购买 nike

所以我试图创建一个温度转换函数,该函数接受一个对象(温度变量),该对象具有一个数值温度属性和一个表示华氏度或摄氏度的属性作为参数,但是当我稍后提醒该函数时,它只是返回[对象对象]。我不确定如何访问 temperature 中的特定属性,因为它说如果我不使用 for...in 循环,它们是未定义的。下面是我让函数返回一个对象的最佳尝试,该对象包含转换后的数值温度值以及更改后的 tempUnits 属性值。感谢您的帮助!

var temperature = {
temp: 75,
tempUnits: "f" // means Fahrenheit (°F) or Celsius (°C), °F here.
};
// (°F - 32) * (5/9) = °C
// (°C) * (9/5) + (32) = °F
var convertTemperature = function (object) {
for (var prop in object) {
if (object[prop] === "f") {
var temperatureC = {
temp: (((object[prop]) - 32) * (5 / 9)),
tempUnits: "c"
};
return temperatureC;
} else if (object[prop] === "c") {
var temperatureF = {
temp: (((object[prop]) * (9 / 5)) + 32),
tempUnits: "f"
};
return temperatureF;
}
}
};

alert(convertTemperature(temperature)); // returns [object Object]

最佳答案

你正在以一种非常奇怪、迂回的方式来做这件事:

var temperature = {
temp: 75,
tempUnits: "f" // means Fahrenheit (°F) or Celsius (°C), °F here.
};
// (°F - 32) * (5/9) = °C
// (°C) * (9/5) + (32) = °F
var convertTemperature = function (o) {
var val = o.temp;
if (o.tempUnits === 'f') {
return temperatureC = {
temp: ((val - 32) * (5 / 9)),
tempUnits: "c"
};
} else {
return {
temp: ((temp * (9 / 5)) + 32),
tempUnits: "f"
};
}
};

var o = convertTemperature(temperature);
alert(o.temp + ' ' + o.tempUnits);

关于JavaScript 温度转换函数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19781730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com