我只是一个javascript的新手, 这就是我在javascript中写条件的方式,
function setAccType(accType) {
if (accType == "PLATINUM") {
return "Platinum Customer";
} else if (accType == "GOLD") {
return "Gold Customer";
} else if (accType == "SILVER") {
return "Silver Customer";
}
},
有更好的方法吗?
答案 0 :(得分:6)
您可以将对象用作地图:
function setAccType(accType){
var map = {
PLATINUM: 'Platinum Customer',
GOLD: 'Gold Customer',
SILVER: 'Silver Customer'
}
return map[accType];
}
或者@Tushar指出:
var accountTypeMap = {
PLATINUM: 'Platinum Customer',
GOLD: 'Gold Customer',
SILVER: 'Silver Customer'
}
function setAccType(accType){
return accountTypeMap[accType];
}
答案 1 :(得分:2)
假设accType
将始终传递给函数。
代码:
return accType[0] + accType.slice(1).toLowerCase() + ' Customer';
代码说明:
accType[0]
:获取字符串的第一个字符accType.slice(1).toLowerCase()
:获取除第一个字符答案 2 :(得分:2)
var TYPES = {
"PLATINUM":"Platinum Customer",
"GOLD":"Gold Customer",
"SILVER":"Silver Customer"
}
function getType(acctType){
return TYPES[acctType];
}
答案 3 :(得分:1)
如果要将相同的变量与不同的值进行比较,并在不同的情况下发生不同的事情,请尝试使用switch
块:
function setAccType(accType){
switch(accType) {
case "PLATINUM" :
return "Platinum Customer";
case "GOLD":
return "Gold Customer";
case "SILVER":
return "Silver Customer";
}
}