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

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

如何修改對象中的鍵值?

如何修改對象中的鍵值?

富國滬深 2022-11-03 10:30:00
我有第一個對象:var objectOne = { my_key_1 : value1, my_key_2 : value2 } ; 我想將該對象復(fù)制到另一個對象中,但鍵名不同。鍵名應(yīng)該這樣寫“myKey1”,所以我做了這個函數(shù):function stringRenaming(oldStr)  {        oldVStr = oldStr.split("_") ;    var newStr = oldStrr[0] ;    for(i = 1 ; i < oldStr.length ; i++ ) {        newStr += oldStr[i].substring(0, 1).toUpperCase()+oldStr[i].substring(1) ;    }    return newStr ;}下面的代碼完美地復(fù)制了第二個對象中的第一個對象:var objectTwo = {} ;for (var i in objectOne) {    if((objectOne[i] !== '') && (objectOne[i] !== undefined) && (objectOne[i] !== null) && (objectOne[i].length !== 0)) {        objectTwo[i] = objectOne[i] ;    }}但是,我找不到將重命名功能應(yīng)用于第二個對象的鍵的方法。我試圖用替換線objectTwo[i] = objectOne[i];,objectTwo[i] = objectOne[i];但它不起作用。我嘗試在第一個循環(huán)之后添加另一個循環(huán)來編輯鍵值,但效果相同。大多數(shù)時候,我的鍵名很好,但值未定義。我不知道現(xiàn)在該嘗試什么,您能幫忙嗎?
查看完整描述

1 回答

?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗 獲得超5個贊

您可以將下劃線和后面的字符替換為大寫字符。


var format = s => s.replace(/(_)(.)/g, (_, __, c) => c.toUpperCase()),

    objectOne = { my_key_1: 'value1', my_key_2: 'value2' },

    result = Object.fromEntries(Object.entries(objectOne).map(([k, v]) => [format(k), v]));


console.log(result);


沒有箭頭函數(shù)和解構(gòu)。


var format = function (s) { return s.replace(/(_)(.)/g, function (_, __, c) { return c.toUpperCase(); }); },

    objectOne = { my_key_1: 'value1', my_key_2: 'value2' },

    result = Object.keys(objectOne).reduce(function (r, key) {

        r[format(key)] = objectOne[key];

        return r;

    }, {});


console.log(result);


查看完整回答
反對 回復(fù) 2022-11-03
  • 1 回答
  • 0 關(guān)注
  • 207 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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