下面是一个用 JavaScript 编写的脚本,目的是从输入中获取一个句子,并且应该将其拆分为单词数组,消除空格。每个单词都应该根据单词的大小进一步分成 2 或 3 个字母,忽略其中剩余的字母。
如果所述单词大于 1 且小于 5,或者大于 6,则它应该是四个字母的单词。所有单词的输出都应使用下划线连接起来。
下面的代码不起作用,我无法弄清楚。请指导我让它发挥作用
document.getElementById("cliename").onchange = function(event){
var list_cname = new Array();
var cname = document.submit.cliename.value;
list_cname = cname.split(" ");
var list_len = list_cname.length;
var valu;
var final_valu;
var i=0;
for (i=0;i<=list_len;i++){
var sub_list = list_cname[i];
var sub_list_len = sub_list.length;
if(sub_list_len>=1 && sub_list_len<=5 ){
sub_list_len=sub_list_len-1;
}
else if(sub_list_len>=6 ){
sub_list_len=4;
}
var list_val = list_cname[i].substring(0,sub_list_len);
valu = list_val;
final_valu = valu + "_" + final_valu;
}
document.write("list -" + cname + ", len - " + list_len + ", final " + final_valu);
}
我得到的错误是“SUB_LIST”未定义。
最佳答案
首先,更改
for (i=0;i<=list_len;i++)
至
for (i=0;i<list_len;i++)
或list_cname[i]
将索引越界。
关于javascript:无法找出错误!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5027560/