簡體   English   中英

重寫 Javascript 箭頭函數

[英]Rewriting an Javascript Arrow-function

誰能解釋並幫助我如何重新編碼這個 Javascript 箭頭函數?

var Data = JSArray.filter(v => v.tags.some(k => k.name === "test"));

我只想將其轉換為 Javascript 默認函數而不是箭頭函數。

謝謝!

你可以改變一個箭頭函數() => expression ,從

a => a

function (a) {
    return a;
}

在一起,你得到

var Data = JSArray.filter(function (v) {
        return v.tags.some(function (k) {
            return k.name === "test";
        });
    });

您可以使用Babel.js Tryout輕松完成此操作

"use strict";

var Data = JSArray.filter(function (v) {
  return v.tags.some(function (k) {
    return k.name === "test";
  });
});

有關解釋,請參閱MDN:箭頭函數

這里有一個非常漂亮的單行代碼,如果沒有箭頭函數,它會變得更加冗長。 嘗試這樣的事情:

var Data = [];
for (var i = 0; i < JSArray.length; i++) {
    var e = JSArray[i];
    if (e.tags.some(function(k) {return k.name === "test"})) {
        Data.push(e);
    }
}

暫無
暫無

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

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