JavaScript にはいくつかの関数型プログラミングがあることを知っています。プロシージャルな方法でコードを自分で記述するよりも簡単に関数型メソッドを使用して、そのような関数を作成できるかどうか疑問に思っています (以下に示すように、SO フォーマットもいくつか使用しています)。何らかの理由で問題)。
function mapToFormat(var myarray, var colname) {
}
myarray は、実際にはサーバー応答からの次の json です...
{
"time": "1",
"col1": "2",
"col2": "3",
"col3": "1"
},
{
"time": "2",
"col2": "3"
},
{
"time": "3",
"col1": "3"
},
{
"time": "4",
"col3": "3"
},
{
"time": "5",
"col1": null
}
上記のjsonの関数を次のように呼び出したい
mapToFormat(myarray, 'col1')
そして、そのようにデータを返すようにします(ただし、配列形式で)
{
"time": "1",
"col1": "2"
},
{
"time": "3",
"col1": "3"
},
{
"time": "5",
"col1": "null
}
var newData = []; を使用するだけかもしれないと考えています。$.each(data, function (index, value) { if(value[colname] not exist) { newData.push({ "time": value['time'], colname : value[colname] } }); } );
しかし、「col1」が存在しないことと「col1」:nullの違いを見分ける方法がわかりません。これは、通過するnull値も通過させたいためです。
どうすればこれを達成できますか?そして、マップ機能や、もっと良いものを使用する必要があるかどうか疑問に思っていますか?