如何在现有JavaScript的IF判断语句中新增字符串单词数校验逻辑
JS代码修改实现方案
你可以直接在原有空值校验逻辑后新增单词数判断即可,核心判断逻辑采用你提到的split(" ").length属性实现,修改后的完整代码如下:
function Check() { p = document.getElementById('p').value w = document.getElementById('w').value if (p == '' || w == ''){ document.getElementById('text').value = 'error'; return; } // 新增w的单词数校验逻辑 if (w.split(" ").length > 1) { document.getElementById('text').value = 'error more than 1 word'; return; } else { let xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var j = JSON.parse(this.response); result = j.answer; show(); } }; xhttp.open("GET",URL+"?p="+p+"&w="+w); xhttp.send(); return; } }
优化说明
如果输入框可能存在首尾空格的情况,为了避免空格导致单词数计算错误,可以将计数逻辑调整为w.trim().split(" ").length,会先去除首尾空格再统计单词数,校验结果更严谨。
内容的提问来源于stack exchange,提问作者am45688
相关产品推荐
相关产品推荐

