5 ms·
I think the most useful feature here is JSON -> JS conversion. Relatively often I find myself copying and pasting some JSON into a JS file then manually deletin
by mjmasn 10y ago
I think the most useful feature here is JSON -> JS conversion. Relatively often I find myself copying and pasting some JSON into a JS file then manually deleting / regexing away the unnecessary quote marks around key names.
- dathanb82 10y agoOther than being idiomatic, is there any advantage to quoting or not quoting key names in JS?
- jorde 10y agoQuoted keys allows more variety in the keys (e.g. "Content-Type") but is more annoying to use if all your JS code is written in camelCase (headers["Content-Type"] vs headers.contentType).
- mjmasn 10y agoMinor reasons but a) it looks untidy (to me), and b) for example if I want to change: foo = { "bar": true, "baz": false } to: foo.bar = true; foo.baz = false; then I have extra quotes to delete. Those half seconds add up over a year! I guess you could argue the opposite though, that this looks messy: let headers = { Expires: 0, 'Content-Type': 'application/json' } Which leads me to believe it's a matter of personal preference, and you should just pick one and stick to it :) And look, there's even an eslint rule for it: http://eslint.org/docs/rules/quote-props http://eslint.org/docs/rules/quote-props
- _ZeD_ 10y agostrange, I always put quote marks, as I see them as totally necessary. Not in the browser, obviously, but in my mind. It helps me recording those are strings, not variables. I made too many mistakes in the likes of var foo = "bar"; var baz = { foo: "qux" };
- vog 10y agoThis bites especially often if you are steadily switching between JavaScript and a server-side language where that code actually does what you expect (e.g. Python).
- mjmasn 10y agoI assume you mean you mistakenly expect baz to equal: { bar: "qux" } ? Don't you use syntax highlighting? I can't imagine this ever being an issue...
- yigitozkavci 10y agoLooks like a nice toy to play with for vim users. I already want to write a macro for it