Javascript 删除数组中以特定字符串开头的所有项
大家好,假设我在javascript中有这样一个数组:Javascript 删除数组中以特定字符串开头的所有项,javascript,jquery,Javascript,Jquery,大家好,假设我在javascript中有这样一个数组: var arr = ["ftp_text_1", "abc_text_2", "ftp_text_3"]; 如何从数组中删除以ftp\uu开头的所有字符串 谢谢使用正则表达式: $.each(arr, function (index, value) { if (value.match("^ftp_")) { arr.splice(index, 1); } }); 只需使用: arr = arr.filte
var arr = ["ftp_text_1", "abc_text_2", "ftp_text_3"];
如何从数组中删除以ftp\uu开头的所有字符串
谢谢使用正则表达式:
$.each(arr, function (index, value) {
if (value.match("^ftp_")) {
arr.splice(index, 1);
}
});
只需使用:
arr = arr.filter(function (item) {
return item.indexOf("ftp_") !== 0;
});
编辑:对于IE9-您可以使用的支持:
使用临时数组存储所需字符串
for(i=0;i<are.length;i+=) {
if(!arr[i].startesWith('ftp_')){
temp[j]=arr[i];
j++:
}
arr=temp;
}
当元素从列表中删除时,元素的索引位置向上移动,因此某些元素可能不会从列表中删除
因此,最好的做法是从末尾删除列表
for(var i=arr.length-1 ; i>=0;i--){
if(arr[i].includes("ftp_"){
arr.splice(i, 1);
}
}
返回所有不以ftp开头的项目。检查'ftp'
是否位于位置0
,即字符串的开头+1注意:这是一个jQuery解决方案。
for(var i=arr.length-1 ; i>=0;i--){
if(arr[i].includes("ftp_"){
arr.splice(i, 1);
}
}