我使用此代码:
window.removeDuplicateLines = function() {
"use strict";
var bodyText = $('#text-area').val().split('\n');
var uniqueText = [];
$.each(bodyText, function(i, el){
if($.inArray(el, uniqueText) === -1) {
uniqueText.push(el);
}
});
document.getElementById('text-area').value = uniqueText.join('\n');
};
从这里:Remove Duplicates from JavaScript Array删除textarea中的重复行。
此代码效果很好,但它也会删除空行也是重复的。
问题:如何删除重复的行,但使用此代码保留(忽略)空行?
答案 0 :(得分:2)
您需要查看整行是否只有空格。为此,您可以 trim() ,然后检查长度是否为0
。因此,将if
支票更改为
if($.inArray(el, uniqueText) === -1 || $.trim(el).length === 0) {
uniqueText.push(el);
}