记录最近前端开发时遇到的一些js相关问题和解决方案


背景

最近做了一个前后端开发,自从前后分离,js碰的都很少了,就导致一个需求开始前端的时候效率比较慢,特记录一下。

内容

js的正则表达式校验

var  reg = "^[A-Za-z0-9;]+$";
var tenantIdTest = "12322```31";
if (tenantId.match(reg) == null){
   console.log("租户ID["+tenantId+"]的输入格式不对!");
}else{
     console.log("ok");
}

js最好的测试方式

使用console 在控制台打印出
console.log("2222");

js在一个function连续调用两个function注意事项

如果连续调用两个function,比如A和B,假设想要的效果是先A后B,如果对B添加条件限制,比如基于A的结果决定是否执行B,那么就会出现A和B同时执行。

js校验是否包含

        //没有包含则返回-1,此时说明存在多个节点
        if (nodeIds.indexOf(nodeId) == -1){
            alert("不支持多个节点同时切换!");
            return false;
        }

js数组

//校验待切换的后缀和目的后缀需要不一样
    var switchToAbSuffixList = new Array();
    var errorTenantIds = new Array();
    switchToAbSuffixList.push(switchToAbSuffix);
    for(var i=0;i -1){
            var tenantId = tenantInfoDetailsByTable[i].tenantId;
            errorTenantIds.push(tenantId);
        }
    }
    if (errorTenantIds.length > 0) {
        alert(errorTenantIds+"的后缀已是"+switchToAbSuffix+",无需再切换,请手动移除后重试!");
        return false;
    }