gpt4 book ai didi

javascript - 如果具有许多 or 表达式的 if else if 函数不会循环遍历所有 or 可能性

转载 作者:行者123 更新时间:2023-11-28 11:14:46 27 4
gpt4 key购买 nike

我根据值有条件地显示图像。该值是一个字符串。但是它只返回第一张图像。它不会遍历整个函数。

  • 我尝试在值两边加上括号,它确实有效,但只检查第一个字符串。
  • 尝试使用一个等号,但没有改变任何内容。
  methods: {
resultImage(value) {
if (
value === 'Less likely' ||
'More likely light' ||
'More likely blue' ||
'More likely curly'
) {
return this.low
} else if (value === 'Average chance') {
return this.medium
} else if (
value === 'Somewhat more likely' ||
'Somewhat more likely brown' ||
'Somewhat more likely curly'
) {
return this.mediumHigh
} else if (
value === 'More likely' ||
'More likely dark' ||
'More likely brown' ||
'More likely straight'
) {
return this.high
}
}
}

期望函数循环到最后并根据值返回图像。实际结果是它返回第一张图像。

最佳答案

目前,每个字符串的计算结果均为 true,除非它为 nullundefined。除了第一个之外,您不会将它们中的任何一个与 value 进行比较。你需要比较所有的,否则,第一个 if block 每次都会通过。

每个表达式都缺少value ===:

 methods: {
resultImage(value) {
if (
value === 'Less likely' ||
value === 'More likely light' ||
value === 'More likely blue' ||
value === 'More likely curly'
) {
return this.low
} else if (value === 'Average chance') {
return this.medium
} else if (
value === 'Somewhat more likely' ||
value === 'Somewhat more likely brown' ||
value === 'Somewhat more likely curly'
) {
return this.mediumHigh
} else if (
value === 'More likely' ||
value === 'More likely dark' ||
value === 'More likely brown' ||
value === 'More likely straight'
) {
return this.high
}
}
}

关于javascript - 如果具有许多 or 表达式的 if else if 函数不会循环遍历所有 or 可能性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57431037/

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