とりあえずjsでマルチバイトを表現する時は ["ほげ"] 形式がいい
JavaScriptはKeyにマルチバイトを使えるイカしたやつだが、下記のようなオブジェクトを表現するときは、
Keyが文字列であるのを明示的に示さないとエラーになるケースがある。
hoge = { ほげ: "foo" } console.log( hoge.ほげ ); // ←タイプ数減って楽だけどよろしくない console.log( hoge["ほげ"] ); // ←コレ形式がベター
でないと、マルチバイトを考慮していないライブラリなどでコケてしまう。
下記のようにuglify-jsでerrorがでてbuildできずずっと悩んでいた..。当然かもしれないが戒めとして。
at new JS_Parse_Error (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:189:18) at js_error (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:197:11) at parse_error (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:299:9) at Object.next_token [as input] (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:544:9) at next (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:643:25) at subscripts (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1287:13) at expr_atom (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1165:20) at maybe_unary (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1328:19) at expr_ops (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1363:24) at maybe_conditional (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1368:20) at maybe_assign (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1392:20) at expression (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1411:20) at expr_list (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1178:24) at subscripts (/Users/hoge/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:1311:30)