[JS] スネークケースのstring/object keys を キャメルケースに変換
最近はガリガリ開発していてそっちでアウトプットしているので、ブログには書く頻度が減ってしまった。
今日書いたコードは糞だけど汎用性あるのでこっちにメモ
/** * Convert snake case string or object keys to camel case. */ convertSnakeToCamel: function(snake) { if (!snake) { return snake; } var camel; var that = this; if (typeof snake === 'string') { camel = snake.replace(/_./g, function(matched) { return matched.charAt(1).toUpperCase(); }); return camel; } _.each(snake, function(value) { if(_.isObject(value) === true) { return that.convertSnakeToCamel(value); } }); for (var prop in snake) { if ((prop.indexOf('_') !== -1) && snake.hasOwnProperty(prop)) { var tmp = snake[prop]; delete snake[prop]; camel = this.convertSnakeToCamel(prop); snake[camel] = tmp; } } return snake;
コーディングを支える技術 ~成り立ちから学ぶプログラミング作法 (WEB+DB PRESS plus)
- 作者: 西尾泰和
- 出版社/メーカー: 技術評論社
- 発売日: 2013/04/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (33件) を見る