簡體   English   中英

JavaScript / NodeJS添加到函數的調用者對象

[英]JavaScript/NodeJS Add to Caller Object of Function

因此,我在Node.JS中創建了一個構造函數,但遇到了一些問題。

function server(server) {
    this.channels = new Array
    var channels = server.channels.array(); // Gets array of Channel  Objects

    channels.forEach(function(selectedchannel){
       if (selectedchannel.constructor.name == "TextChannel") {
            channels.push(selectedchannel.name)          // <- Here
      }
   });

我想將所有通道的名稱添加到this.channels數組中,channels.push將添加到channels-variable,this.channels.push將選擇傳遞給forEach的匿名函數。 我該怎么做呢? (我是菜鳥,請憐憫)

您可以嘗試以下方法:

function Server(server) {
    let channels = server.channels.array();

    this.channels = channels.map(selectedchannel => {
       if (selectedchannel.constructor.name === 'TextChannel') {
            return selectedchannel.name;
      }
    }).filter(data => !!data);
}

構造函數應以大寫字母開頭。 不需要為數組,函數和其他類型調用構造函數,但是在沒有括號的情況下調用它是錯誤的。 數組映射函數返回一個新數組,過濾器將刪除空/虛假值。

暫無
暫無

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

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