gpt4 book ai didi

javascript - 如何将条件决策的结果分配给javascript中的变量

转载 作者:行者123 更新时间:2023-11-28 11:43:15 25 4
gpt4 key购买 nike

下面的代码工作正常:

    var styles = []
if (state == 's1') {
styles = ['inline-block', 'none', 'none']
} else if (state == 's2') {
styles = ['none', 'inline-block', 'none']
} else if (state == 's3') {
styles = ['none', 'none', 'inline-block']
}

但是,在某些语言中,我们可以使其更加简洁。我想做以下几件事:

    var styles = 
if (state == 's1') {
['inline-block', 'none', 'none']
} else if (state == 's2') {
['none', 'inline-block', 'none']
} else if (state == 's3') {
['none', 'none', 'inline-block']
}

JavaScript 中是否存在这样的条件赋值 - 或者甚至更好的某种 match/case

更新 很多好的答案 - 谢谢!选择一个似乎最接近我的初衷。但通过其中的许多内容了解了 javascript 的各个方面。

最佳答案

您可以将条件定义为函数

chooseStyle = (state) => {
if (state == 's1') {
return ['inline-block', 'none', 'none']
} else if (state == 's2') {
return ['none', 'inline-block', 'none']
} else if (state == 's3') {
return ['none', 'none', 'inline-block']
}
}

var styles = chooseStyle(state)

如果您使用开关,效果会更好:

chooseStyle = (state) => {
switch(state) {
case 's1':
return ['inline-block', 'none', 'none']
case 's2':
return ['none', 'inline-block', 'none']
case 's3':
return ['none', 'none', 'inline-block']
default:
return ['inline-block', 'none', 'none'] // return the default styles you want, here I choose the styles of 's1'
}
}

关于javascript - 如何将条件决策的结果分配给javascript中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59936048/

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