我正在尝试使用if循环将int转换为str!这是我的logiv。我做错了什么?有什么想法吗?
var waitTime = parseInt("53");
if (waitTime > 20) {
return 'a lot of time'
} else if (waitTime < 20) {
return 'we can wait'
}
console.log(waitTime);
我一直在
答案 0 :(得分:2)
您的代码看起来大致正确,包括您使用parseInt
,但是您可能正在将return
语句与console.log
语句混合使用?
var waitTime = parseInt("53");
if (waitTime > 20) {
console.log('a lot of time'); // use console.log rather than return
} else if (waitTime < 20) {
console.log('we can wait'); // use console.log rather than return
}
console.log(waitTime);
答案 1 :(得分:2)
或者(对Jonathan的回答),将代码放在一个函数中然后// window.isSecureContext could be used for Chrome
var isSecureOrigin = location.protocol === 'https:' ||
location.hostname === 'localhost';
if (!isSecureOrigin) {
alert('getUserMedia() must be run from a secure origin: HTTPS or localhost.' +
'\n\nChanging protocol to HTTPS');
location.protocol = 'HTTPS';
}
s是有意义的。改进版本会看到您在等待时间内作为函数的参数传递。
return
答案 2 :(得分:1)
您的代码中有错误。
return 'a lot of time'
它正在尝试从函数返回文本a lot of time
。但是你从来没有创建过一个函数,因此它会抛出一个错误。
更接近你想要的东西:
function wait(waitTime) {
if (waitTime > 20) {
return 'a lot of time'
} else if (waitTime < 20) {
return 'we can wait'
}
}
console.log(wait(YOUR_WAIT_TIME_HERE));
编辑您根本不需要parseInt
功能。 (即:'25' > 20
)隐式将'25'
投射到Number
。
答案 3 :(得分:1)
你可以这样做,在if / else子句中重新分配变量值:
var waitTime = parseInt("53");
if (waitTime > 20) {
waitTime = 'a lot of time';
} else if (waitTime <= 20) {
waitTime = 'we can wait';
}
console.log(waitTime);
&#13;
答案 4 :(得分:1)
您也可以这样做 - 而不是“返回”,您可以这样做:
let attr1: number = ...
let attr2: string = ...
let user1: User = {
attr1: attr1,
attr2: attr2
}