首頁  >  問答  >  主體

如何透過函數鍊式呼叫簡化這段 JavaScript 程式碼?

<p>我想知道如何透過鍊式呼叫來簡化這些函數呼叫。是否有一種方法可以將forEach、push、解構數組和map連結在一起使用。 </p> <pre class="brush:php;toolbar:false;">let selectorsForLoader = ['a', 'b']; let loadingElements = []; selectorsForLoader.forEach(selector => { loadingElements.push(...Array.from(document.querySelectorAll(selector))); }); let loaders = loadingElements.map(loadingElement => { loadingElement.doSomething(); });</pre> <p>這是一個例子:</p> <pre class="brush:php;toolbar:false;">food.map(item => item.type) .reduce((result, fruit) => { result.push(fruit); return [...new Set(result)]; }, []);</pre> <p><br /></p>
P粉099145710P粉099145710449 天前546

全部回覆(1)我來回復

  • P粉019353247

    P粉0193532472023-07-29 18:29:37

    這呢

    ['a', 'b'].flatMap(selector => {
        return Array.from(document.querySelectorAll(selector)));
      }).forEach(loadingElement => {
        loadingElement.doSomething();
      });

    順便說一下,你給的那個"例子"應該這樣寫:

    new Set(food.map(item => item.type));

    回覆
    0
  • 取消回覆