1、看《精通JavaScript》的时候顺手给群里的同学出了个题目:
一个函数传进来一个值,如果是“stanley”则替换为“huangxiaoli”如果是“xinye”则替换为“xinxiaoye”,其他值保持原值,不用if或者switch怎么弄?
群里的同学给出了3个答案:
李新野同学给出答案一:
function a(str){
(str == “stanley” && (str=”huangxiaoli”)) || (str == “xinye” && (str=”lixioaye”) );
return str;
}
(str == “stanley” && (str=”huangxiaoli”)) || (str == “xinye” && (str=”lixioaye”) );
return str;
}
这个用了运算符&&和||
李检全同学给出答案二:
function test(str_in){
return str_in ==”stanley” ? “huangxiaoli” : (str_in ==”xinye” ? “xinxiaoye” : str_in) ;
}
return str_in ==”stanley” ? “huangxiaoli” : (str_in ==”xinye” ? “xinxiaoye” : str_in) ;
}
这个利用运算符? :
stanley小立的答案三:
function a(str){
str={“stanley”:”huangxiaoli”,”xinye”:”lixioaye”}[str]||str;
return str;
}
str={“stanley”:”huangxiaoli”,”xinye”:”lixioaye”}[str]||str;
return str;
}
用了对象。
就一题,以后有了再加上的。
p> 更多精彩--->>耕书录