🐍

スネークケースをキャメルケースに書き換える

2023/03/13に公開

Rails など スネークケースで返すオブジェクトを、キャメルケースに書き換える方法。

Vue の Composable や React の カスタムフックでステートをコンポーネントに返す際に使うのを想定

 const users = [{
   id: 'id001',
   user_name: 'John',
   email_address: 'john@example.com',
   enabled: true
 }]

 const converted = users.map(({ user_name: userName, email_address: emailAdress, ...user }) => ({
 	userName,
 	emailAdress,
 	...user
 })

エイリアスとスプレッド構文を組み合わせて、エイリアスで return すればいい。

余談だが、user_name: userName などは return に含めないとそのプロパティが無いオブジェクトが返されるので、特定のオブジェクトからあるプロパティを削除したものを生成したいときも便利。

GitHubで編集を提案

Discussion