0

我正在尝试将新值推送到数组中,但是当推送值时会创建 2 个新数组。我正在尝试将值推送到一个数组中,而不是单独的数组中。我怎么做?这是我正在使用的代码。

for (count = 0; count < xmlItem.length; count++) {
  // dates
  xmlDate = new Date(xmlItem[count].getElementsByTagName("pubDate")[0].childNodes[0].nodeValue);
  // titles
  xmlTitle = xmlItem[count].getElementsByTagName("title")[0].childNodes[0].nodeValue;
  // descriptions
  xmlDescription = xmlItem[count].getElementsByTagName("description")[0].childNodes[0].nodeValue;
  // date reformated
  pubDate = (xmlDate.getMonth() + 1) + "/" + xmlDate.getDate() + "/" + xmlDate.getFullYear();
  // if there is a new code
  if (pubDate == today) {
      // array with titles for new values
      totalValues = new Array();
      // add the title
      totalValues.push(xmlTitle);
      // add badge for number of values
      chrome.browserAction.setBadgeText({ text: JSON.stringify(totalValues.length) });
  }
}
4

2 回答 2

2

totalCodes = new Array();在你的for循环之前移动它。

每次for循环迭代时,它都会使用totalCodes = new Array();.

于 2012-08-06T16:22:19.937 回答
0

每次执行循环时,totalCodes = new Array()都会调用该行,并将其重置totalCodes为空数组。在循环totalCodes之外声明。for

于 2012-08-06T16:24:05.823 回答