[英]javascript split string selected text remove
如何使用javascript从字符串中删除碎片化的文本
示例字符串:
var start = "World,Book,Pencil,Door";
现在,当我选择任何选定的值时: "World"
,我希望结果是"Book,Pencil,Door"
。
// result = "Book,Pencil,Door";
如果您询问如何从逗号分隔的字符串中删除值,请尝试以下操作...
var removeValue = function(list, value, separator) {
separator = separator || ",";
var values = list.split(separator);
for(var i=0; i<values.length; i++) {
if(values[i]===value) {
values.splice(i, 1);
return values.join(separator);
}
}
return list;
}
如果找到了您要查找的值,则会将其删除,并返回一个新的逗号分隔列表。 如果未找到,则返回旧列表。
另一个版本......使用 indexOf
var removeValue = function(list, value, separator) {
separator = separator || ",";
var values = list.split(separator);
var index = values.indexOf(value);
if(index >= 0) {
values.splice(index, 1);
return values.join(separator);
} else {
return list;
}
}
基本上,使用任何一个函数,您都可以将列表 ( "World,Book,Pencil,Door"
) 作为字符串发送,将要删除的值 ( "World"
) 作为另一个字符串发送,以及分隔符是什么 ( ","
表示逗号...但是,逗号也是默认值,因此可以省略)。 如果列表中不存在要删除的值,它将返回列表。 如果它在列表中,它将被删除。
示例 1 :
var final = removeValue("World,Book,Pencil,Door", "World");
// final = "Book,Pencil,Door"
示例 2 :
var final = removeValue("World,Book,Pencil,Door", "House");
// final = "World,Book,Pencil,Door"
示例 3 :
var final = removeValue("World|Book|Pencil|Door", "World", "|");
// final = "Book,Pencil,Door"
更新:
jsFiddle: http : //jsfiddle.net/rfornal/96awa2ht/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.