使用数组填充if语句值

Using an array to populate if statement values

本文关键字:语句 if 填充 数组      更新时间:2023-10-14

我正试图在使用if statement时将css样式切换为几个元素。我通过使用许多if statements来实现它,但我觉得可以使用一个包含值和一个if statement的数组来简化它。

以下是我迄今为止所做的工作:

var linkValues =  $("#links-active-picker").val() && $("#links-panel-picker").val();
if(linkValues == "#009bd1"){
    $("#light-blue").parent().addClass("selected");
}
if(linkValues == "#0bdea1"){
    $("#light-green").parent().addClass("selected");
}  
if(linkValues == "#edd531"){
    $("#yellow").parent().addClass("selected");
}   

我会创建一个简单的对象

var obj = {
    "#009bd1": "#light-blue",
    "#0bdea1": "#light-green", 
    "#edd531": "#yellow"
};

然后做

if (obj[linkValues]) {
    $(obj[linkValues]).parent().addClass('selected');
}
var obj = {
    "#009bd1": "#light-blue",
    "#0bdea1": "#light-green", 
    "#edd531": "#yellow"
};
if(linkValues in obj){
   $(obj[linkValues].parent().addClass('selected');
}