记录最近前端开发时遇到的一些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;
}