[英]Removing last line break in string
我有一個名稱(變量名)列表,在運行其他代碼以添加或刪除名稱后,我想將其放置在名為nameupdated的列表中:
var names = new Array('Alice', 'Bryan', 'Catherine', 'Douglas', 'Emma', 'Frank');
var name = "";
var nameupdated = "";
var text = "";
for(var i in names){
name = names[i];
if (name == "" || name == text || typeof(name) == undefined)
{
}
else{
nameupdated = nameupdated + name + "\n";
}
}
我似乎無法刪除最后一個換行符,但是我嘗試操縱代碼。 任何有任何想法的人如何?
如果使用.filter
刪除要排除的項,然后使用.join
和換行符,則邏輯可能會更加清晰。 注意,數組文字通常比使用new Array
構造函數更好:
var text = 'foo'; var names = [ 'Alice', 'Bryan', 'Catherine', 'Douglas', 'Emma', 'Frank' ]; var nameUpdated = names .filter(name => !(name == "" || name == text || typeof(name) == undefined)) .join('\\n'); console.log(nameUpdated);
new line
請嘗試第二個 var names = [ 'Alice', 'Bryan', 'Catherine', 'Douglas', 'Emma', 'Frank' ]; //Array with \\n var result = [...names].map((d, i) => i < names.length-1 && (name => !(name == "" || name == text || typeof(name) == undefined)) ? d+'\\n' : d); //String with new line after each element var result1 = [...names].map((d, i) => i < names.length-1 && (name => !(name == "" || name == text || typeof(name) == undefined))? d+'\\n' : d).join(''); console.log(result); console.log(result1);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.