簡體   English   中英

將具有鍵值的對象轉換為具有所述鍵名和值的對象數組

[英]Convert an object with key values to an array of objects with said key name and values

我被這個困擾着...

我正在嘗試轉換我在Express中獲得的req.query,這是一個對象,用於形成對象數組,因此我可以將這些作為傳遞給存儲過程的輸入傳遞給SQL Server。

這是我的數據-

{ param1: 'testing123', param2: 'poooool', param300: 'nnnvncn' }

我希望它看起來像

[{param1: 'testing123'},{param2: 'poooool'},{param300: 'nnnvncn'}]

知道我將如何獲得所需的數組嗎?

編輯:這是我最終在node.js中運行所需的代碼

app.get('/:client/storedproc/:sp', function(req, resp){
    var sp = req.params.sp;
    var obj = req.query;
    var test = function(){ return Object.keys(obj).map(k => ({ [k]: obj[k] }));}
    var arr = test();
    console.log(arr)
});

您可以為此使用Object.keys 給定第一個片段o的對象:

return Object.keys(o).map(function(k) {
    var x = {};
    x[k] = o[k];
    return x;
});

只是為了好玩,這就是ES2015的簡潔程度:

return Object.keys(o).map(k => ({ [k]: o[k] }));

暫無
暫無

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

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