比较java脚本中的数组
Comparison an array in java script
关于如何比较数组中的字符串,我有问题。。在我的名单上有杰克,约翰,nami@domain,nami
function **alreadyInList**(list, toBeAdded) {
// return true or false
var delims = "(,)";
var tokens = list.split(delims);
for ( var i = 0; i < tokens.length; i++){
if (tokens[i] === toBeAdded ){
return true;
}
else
return false;
}
}
function addListTo(selectbox, textbox) {
var values = new Array();
var c = 0;
for ( i = 0; i < selectbox.options.length; i++) {
if (selectbox.options[i].selected) {
if (!**alreadyInList**(textbox.value,selectbox.options[i].value)) {
values[c++] = selectbox.options[i].value;
}
}
}
if (values.length == 0) return;
var v = values[0];
for (i = 1; i < values.length; i++) {
v += ',' + values[i];
}
if (textbox.value.length>0) {
if (textbox.value=='Any') {
textbox.value = v;
} else {
textbox.value += ',';
textbox.value += v;
}
} else {
textbox.value += v;
}
}
当我把我的条件放进去,我想把字符串添加到文本框中时,它只对第一个字符串有效,比如说我把nami作为我的字符串,然后当我想再次放nami时,它不能,所以它有效。。但在","之后name@domain.我可以把娜米放回去。。意思是我不想在我的文本框中重复字符串。有人能帮我吗?对不起,我还是这个编程的新手。。对不起我的英语
下面是函数的修订版本,用于检查名称是否在数组中的任何字符串中出现两次
function alreadyInList(list, toBeAdded) {
// return true or false
var delims = ",",
tokens = list.split(delims),
found = false;
var end = tokens.forEach(function (value) {
if (value.indexOf(toBeAdded) !== -1 && found == false) {
found = true;
alert('It''s been found!');
// Do something
return true;
}
return false;
});
if (found != true) {
alert('Not in the list');
return false;
} else {
return false;
}
}
alreadyInList('marry,joe,gerry', 'marry');
JSFiddle演示
此外,如果它只是列表中的一个出现,那么你需要一些没有函数的简单东西。
var str = "marry,joe,gerry",
key = "marry";
if ( str.indexOf(key) !== -1 ) {
// Its found! Do something
}
正如Sasquatch在上面指出的,问题在于用于拆分的分隔符。您希望用一个逗号","分隔,而不是用三个字符"(,)"分隔。
按照代码的编写方式,由于分割分隔符错误,令牌只能有一个值。它将整个字符串变量列表与toBeAdded字符串匹配,并返回false。
相关文章:
- 如何在java脚本中传递对象数组
- 对照数组脚本检查文本框中的值不起作用
- 如何将数组(Google应用程序脚本)返回到HTML侧边栏
- 如何将数组(数字)加载到谷歌应用脚本 Byte[] 中
- 使用Google应用程序脚本将数组传递给客户端函数
- 重建有角度的java脚本数组对象
- 将JSON数组从PHP传递到Java脚本
- 当我有一个脚本数组时,如何等待脚本加载
- JavaScript/jQuery-脚本不起作用-添加&删除类,合并数组-测试用例
- 如何使用java脚本和php获取多维数组数据
- 将已编辑的文件(图像)数组发送到php脚本
- 如何使用AJAX处理从PHP脚本返回的数组
- 尝试将数组从内容脚本发送到弹出脚本时出现 Chrome 扩展程序时出错
- 将信息从暴雪API提取到谷歌脚本中的数组中
- 咖啡脚本数组查找下一个位置
- 使用 Google Apps 脚本处理数组中输入元素中的多个文件
- 如何在 Javascript 命名空间脚本中创建函数数组
- 通过node-js脚本将文档数组插入mongodb中的数据库时出现问题
- 淡入 在页面 html 之间淡出并使用数组脚本更改图像
- HTML数组脚本不工作(in_Array未定义)