簡體   English   中英

如何在數組的每個項目前面添加文本?

[英]How do I add text in front of each item of an array?

我有一段代碼,它遍歷了包含“ menu-item-li”類的所有元素,並將其href標記的值放入數組中。 這是這樣做的代碼:

var arr = new Array();
$(".menu-item-li").each(function() {
    arr.push($(this).attr("href"));
});

這些將返回如下內容:

  • link1.html
  • link2.html
  • link3.html
  • ...等等

現在,我想做的是在數組中的每個項目之前放置一些文本。 假設我要在每個項目前面添加“網站/”。 結果應該是這樣的:

  • 網站/ link1.html
  • 網站/ link2.html
  • 網站/ link3.html
  • ...等等

如何編輯我的Javascript代碼,以便可以在數組中每個項目的開頭添加“ website /”?

謝謝!

arr.push('website/' + $(this).attr("href")); ,但您也可以使用.map方法。

var arr = $(".menu-item-li").map(function() {
    return 'website/' + $(this).attr("href");
});
var arr = new Array();
$(".menu-item-li").each(function() {
    var str = "website/"+$(this).attr("href");
    arr.push(str);
});

如果數組包含<a>元素的列表–我假設盡管有類名,因為您使用的是href屬性–那么它很簡單:

var arr = $(".menu-item-li").map(function() {
    return "website/" + this.href;
});

實際上,您實際上不需要在this上再次調用jQuery並調用attr方法,這很浪費。

用這個,

var arr = new Array();
$(".menu-item-li").each(function() {
    arr.push('website/' + $(this).attr("href"));
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM