JavaScriptの値をキーにマップ(逆オブジェクトマッピング)
オブジェクトを受け取り、キーが値にマップされているオブジェクトを返す関数reverseObject()を作成する必要があります。
Object.keys()を繰り返し処理し、新しいオブジェクトの値キーペアとしてキーと値のペアをプッシュすることで、これにアプローチします。
これを行うためのコードは次のとおりです-
例
const cities = { 'Jodhpur': 'Rajasthan','Alwar': 'Rajasthan','Mumbai': 'Maharasthra','Ahemdabad': 'Gujrat','Pune': 'Maharasthra' }; const reverseObject = (obj) => { const newObj = {}; Object.keys(obj).forEach(key => { if(newObj[obj[key]]){ newObj[obj[key]].push(key); }else{ newObj[obj[key]] = [key]; } }); return newObj; }; console.log(reverseObject(cities));
出力
コンソールでの上記のコードの出力は-
になります{ Rajasthan: [ 'Jodhpur', 'Alwar' ], Maharasthra: [ 'Mumbai', 'Pune' ], Gujrat: [ 'Ahemdabad' ] }
-
JavaScriptでオブジェクトをマップします。
マップオブジェクトはES6で導入され、キーと値のペアである要素のコレクションです。マップ内のキーまたは値は、オブジェクトまたはプリミティブ値にすることができます。 以下はJavaScriptのマップオブジェクトのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initia
-
JavaScriptのObject.keys()。map()VS Array.map()
以下は、JavaScriptでObject.keys()。map()とArray.map()を示すコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title>