第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

映射 2 對象并根據(jù)值創(chuàng)建對象

映射 2 對象并根據(jù)值創(chuàng)建對象

狐的傳說 2022-01-01 20:13:04
我有一個從 html 表單構建的對象。當我填寫表格時,我獲得了這個 json 對象,我們稱之為“jsonObjectForm”:{  "inputID1": "content1",  "inputID2": "content2",  "inputID3": "content3",  "beginningDate": "2020-02-02",  "endingDate": "2022-03-03",  "inputID4": "content4",  "inputID5": "content5",  "inputID6": "content6",  "inputID7": "content7",  "inputID8": "content8"}我有第二個對象,我必須使用它來構建 sql 查詢。這個對象是let fieldNames = {    "inputID1": "dbField1",    "inputID2": "dbField2",    "inputID3": "dbField3",    "inputID4": "dbField4",    "inputID5": "dbField5",    "inputID6": "dbField6",    "inputID7": "dbField7",    "inputID8": "dbField7",};我找到了瀏覽第一個對象的方法。我在表單中定義了我想要“掃描”的表單元素:const pageFormElements = getAllFormElements(document.getElementById("requestForm"));for(let [key, value] of Object.entries(jsonObjectForm)) {    pageFormElements.forEach(element => {        console.log("key: " + key + " | value: " + value);    }}我的問題是在這種情況下如何管理雙 forEach,我想知道是否有辦法將值從第一個對象“映射”到第二個對象并構建一個如下所示的最終對象:let fieldNames = {    "dbField1": "content1",    "dbField2": "content2",    "dbField3": "content3",    "dbField4": "content4",    "dbField5": "content5",    "dbField6": "content6",    "dbField7": "content7",    "dbField7": "content8",};我的目標是創(chuàng)建一個這樣的查詢query = select * from whatever where dbField1 = content1 AND dbField2 = content2 ... AND dbField8 = content8;
查看完整描述

3 回答

?
慕森王

TA貢獻1777條經(jīng)驗 獲得超3個贊

您可以通過查看帶有表達式的鍵beginning和ending前綴來迭代字段并組合所需的查詢BETWEEN。


var data = { inputID1: "content1", inputID2: "content2", inputID3: "content3", beginningDate: "2020-02-02", endingDate: "2022-03-03", inputID4: "content4", inputID5: "content5", inputID6: "content6", inputID7: "content7", inputID8: "content8" },

    fields = { Date: 'date', inputID1: "dbField1", inputID2: "dbField2", inputID3: "dbField3", inputID4: "dbField4", inputID5: "dbField5", inputID6: "dbField6", inputID7: "dbField7", inputID8: "dbField7" },

    result = Object

        .entries(fields)

        .map(([k, v]) => (('beginning' + k) in data) && (('ending' + k) in data)

            ? `${v} BETWEEN '${data['beginning' + k]}' AND '${data['ending' + k]}'`

            : `${v}='${data[k]}'`

        )

        .join(' AND ');


console.log(result);

.as-console-wrapper { max-height: 100% !important; top: 0; }


查看完整回答
反對 回復 2022-01-01
?
鳳凰求蠱

TA貢獻1825條經(jīng)驗 獲得超4個贊

你可以使用這樣的東西:


const content = {

  "inputID1": "content1",

  "inputID2": "content2",

  "inputID3": "content3",

  "beginningDate": "2020-02-02",

  "endingDate": "2022-03-03",

  "inputID4": "content4",

  "inputID5": "content5",

  "inputID6": "content6",

  "inputID7": "content7",

  "inputID8": "content8"

}


const fieldNames = {

  "inputID1": "dbField1",

  "inputID2": "dbField2",

  "inputID3": "dbField3",

  "inputID4": "dbField4",

  "inputID5": "dbField5",

  "inputID6": "dbField6",

  "inputID7": "dbField7",

  "inputID8": "dbField7",

};


const result = Object.entries(fieldNames).reduce((a, [k, v]) => (a[v] = content[k], a), {});


console.log(result);


這將遍歷fieldNames條目并使用條目的值作為鍵和值,來自content與條目鍵匹配的對象的值生成一個新對象。


查看完整回答
反對 回復 2022-01-01
?
ibeautiful

TA貢獻1993條經(jīng)驗 獲得超6個贊

此代碼可以為您完成:


const content = {

  "inputID1": "content1",

  "inputID2": "content2",

  "inputID3": "content3",

  "beginningDate": "2020-02-02",

  "endingDate": "2022-03-03",

  "inputID4": "content4",

  "inputID5": "content5",

  "inputID6": "content6",

  "inputID7": "content7",

  "inputID8": "content8"

}


const fieldNames = {

  "inputID1": "dbField1",

  "inputID2": "dbField2",

  "inputID3": "dbField3",

  "inputID4": "dbField4",

  "inputID5": "dbField5",

  "inputID6": "dbField6",

  "inputID7": "dbField7",

  "inputID8": "dbField7",

};

const result = {};

Object.keys(fieldNames).forEach(key => result[fieldNames[key]] = content[key]);

console.log(result);


查看完整回答
反對 回復 2022-01-01
  • 3 回答
  • 0 關注
  • 194 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號