我正在尝试简化以下代码。这些代码对我来说似乎是多余的。这里有人可以帮帮我吗?非常感谢!
if(area.regionCode=='0' || area.regionCode==null){
var fakecode=area.region.substring(0, area.region.length - 1);
area.region= fakecode +i;
}
答案 0 :(得分:2)
每当你认为某些代码没有直接揭示时,请尝试给它一个合适名称的新家:
if (!isValidRegionCode(area.regionCode)) {
...
}
...
function isValidRegionCode(regionCode) {
return area.regionCode != null && area.regionCode != '0';
}
它总体上有更多的代码,但是你的意图很明确。
答案 1 :(得分:0)
我建议明确的条件检查。使用时:
if (area.regionCode) { }
逻辑风格,一种是将varAny视为布尔值。因此,JavaScript将执行隐式转换为varAny所针对的任何对象类型的布尔值。
或
if(Boolean(area.regionCode)){
codes here;
}
两者都会一样
为以下内容返回false,
要注意字符串零返回true" 0"和空白" "
您还可以先修改输出,以便解决" "
问题
这里有教程How do I trim a string in javascript?
在@mttrb和@nnnnnn描述的情况下,您可以先按parseInt()
和parseFloat()
将字符串转换为int或float,然后检查Converting strings to numbers
答案 2 :(得分:0)
if(parseInt(area.regionCode) > 0) {}