JavaScript オブジェクトをプロパティ名で並べ替える
Q: このような JavaScript オブジェクトをプロパティ名でアルファベット順に並べ替えるにはどうすればよいですか?
{ method: 'artist.getInfo', artist: 'Green Day', format: 'json', api_key: 'fa3af76b9396d0091c9c41ebe3c63716' }
結果:
{ api_key: 'fa3af76b9396d0091c9c41ebe3c63716', artist: 'Green Day', format: 'json', method: 'artist.getInfo' }
A: ES6 以降では、オブジェクトのキーが順序付けされるようになりました。
以前は、オブジェクト内のキーの順序は未定義でした。そのため、オブジェクトを一貫して並べ替えることが困難になります。内部の並べ替え順序に依存するのではなく、オブジェクトがユーザーに表示されるときにキーを並べ替えることを検討してください。
ただし、順序が維持されている場合、プロパティ名でオブジェクトを並べ替える 1 つの方法は次のとおりです。
function sortObject(o) { var sorted = {}, key, a = []; for (key in o) { if (o.hasOwnProperty(key)) { a.push(key); } } a.sort(); for (key = 0; key < a.length; key++) { sorted[a[key]] = o[a[key]]; } return sorted; }
以上がJavaScript オブジェクトをプロパティ名でアルファベット順に並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。