Javascript 更改if/else接通开关
你好!要更改开关上的if\else语句 我有这个工作代码Javascript 更改if/else接通开关,javascript,jquery,if-statement,switch-statement,Javascript,Jquery,If Statement,Switch Statement,你好!要更改开关上的if\else语句 我有这个工作代码 $tbody.append([ '<td class="view">' + (row.age === '1' ? '18' : row.age === '2' ? '18-24' : row.age === '3' ? '25-35' : row.age === '4' ? '35+' : 'any' ) + '</td>', ]); $tbody.append([ “+(row.age=='1'?'18':r
$tbody.append([
'<td class="view">' + (row.age === '1' ? '18' : row.age === '2' ? '18-24' : row.age === '3' ? '25-35' : row.age === '4' ? '35+' : 'any' ) + '</td>',
]);
$tbody.append([
“+(row.age=='1'?'18':row.age=='2'?'18-24':row.age=='3'?'25-35':row.age=='4'?'35+':'any')+”,
]);
我试着用这种结构来代替它:
var text= 0;
switch (row.age) {
case 0:
text= "any";
break;
case 1:
text = "18";
break;
case 2:
text = "18-24";
break;
case 3:
text = "25-34";
break;
case 3:
text = "35+";
break;
}
$tbody.append([
'<td class="view">' + text + '</td>',
]);
var text=0;
开关(行年龄){
案例0:
text=“任何”;
打破
案例1:
text=“18”;
打破
案例2:
text=“18-24”;
打破
案例3:
text=“25-34”;
打破
案例3:
text=“35+”;
打破
}
$tbody.append([
''+文本+'',
]);
但它不起作用。结果总是0。有什么想法吗 如果
row.age
是字符串,则需要将大小写
值设置为字符串
或整数
如果row.age是整数
switch (row.age) {
case '0':
text= "any";
break;
case '1':
text = "18";
break;
case '2':
text = "18-24";
break;
case '3':
text = "25-34";
break;
case '3':
text = "35+";
break;
}
根据您的问题,if-else
表示row.age
是字符串,因此在开关案例
块中,您必须将其作为整数进行比较。因为,像这样切换匹配
==
严格匹配。行。年龄===“1”
和案例1
不同。第一个是字符串,第二个是int尝试在.append()
处删除[
,]
,返回错误
NotFoundError:未能在“节点”上执行“appendChild”:新的子元素为null。
var行={};
row.age=1;
var text=“”;
开关(行年龄){
案例0:
text=“任何”;
打破
案例1:
text=“18”;
打破
案例2:
text=“18-24”;
打破
案例3:
text=“25-34”;
打破
案例3:
text=“35+”;
打破
}
$(“正文”).append(“+text+”)
你说“它不工作”是什么意思?请详细说明。它什么都没用?它附加了错误的东西?@Jesse更新了我的问题行。与case
s中的字符串相比,age
似乎是一个字符串。