switch (v) { case 1: break; case 2: break; case 3: break; default: break; }
โฆ๋๋คโฆ
switch (v) {
case 1:
break;
case 2:
break;
case 3:
break;
default:
break;
}
์ด๊ฒ์ ์๋์ ์ผ ์๋ ์์ง๋ง case
๋ ์ค์ ์ ๋ฐ๋ผ 1๋จ๊ณ ๋ค์ฌ์ฐ๊ธฐ๋ ๊ฒ์ผ๋ก ์์ํฉ๋๋ค.
Crockford ๊ท์ฝ, http://javascript.crockford.com/code.html ์ ๋ฐ๋ผ ์๋์ ์ผ๋ก ์ค๊ณ๋ ๊ฒ์ด๋ฏ๋ก ๋ฒ๊ทธ๊ฐ ์๋๋๋ค.
IMHO, ๊ทธ๊ฑด ์ ๋ง ๋ง์ด ์ ๋ฉ๋๋ค. ์ถ๊ฐ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ์๋ตํ Crockford์ ๋ ผ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. โ๊ฐ ์ผ์ด์ค๋ ์ค์์น์ ์ ๋ ฌ๋ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๊ณผ๋ํ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ๋ฐฉ์งํ ์ ์์ต๋๋ค.โ ์ค๋ฅผ๋ฆฌ?
๊ทธ๋๋ ๋น์ ์ ์์ ์ ์๊ฒ ์ต๋๋ค. ์๋์ ์ผ๋ก ์ค๊ณ๋ ๊ฒ์ด๊ณ ๊ทธ๋ฐ ์์ผ๋ก ๋ง์์ ๋ค๋ฉด ๊ทธ๋๋ก ๋์ญ์์ค!
switch (foo) {
case something:
break;
}
^^^^^^^ huge ugly empty space
...๊ทธ๋ฆฌ๊ณ ์ค์ ์ฝ๋๋ ๊ฐ์๊ธฐ 2๊ฐ์ ๋ค์ฌ์ฐ๊ธฐ๋ก ๋ฐ๋ ค๋๋๋ฐ, ์ด๋ ์ผ๋ฐ์ ์ผ๋ก ์ค์์น/์ผ์ด์ค๋ฅผ ๋ค์ฌ์ฐ๊ธฐ๋์ง ์์ ํน์ ์ผ์ด์ค๋ก ์ฒ๋ฆฌํ๋ ๊ฒ๋ณด๋ค ํจ์ฌ ๋ ์ถํฉ๋๋ค.
๋ถ๋ช ํ, ๊ทธ๊ฒ์ ๋ณด๋ ์ฌ๋์ ๋์ ์์ต๋๋ค.
๋๋ switch ๋ฌธ์ ์ค์ ๋์ ํ์ธํ๋ ๊ฒ์ด ํจ์ฌ ๋ ์ด๋ ต๋ค๋ ๊ทธ์ ์๊ฐ์ Crockford์ ๋์ํ์ง ์์ต๋๋ค. ๊ทธ์ ์ถ๋ก ์ ๋ฐ๋ฅด๋ฉด ์ ์ ์ด ๊ตฌ์กฐ๋ฅผ ๋ค์ฌ์ฐ๊ธฐํฉ๋๊น? ๊ทธ๋ค์ ๋ชจ๋ ๋ค์ฌ ์ฐ๊ธฐ ํจ๋ํฐ๋ฅผ ์์ฑํฉ๋๋ค.
๋๋ ์ด๊ฒ์ด 800x600 ํด์๋์์ ์๋ํ๋ค๋ฉด ๋ ์ข์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
switch (v) {
case 1:
// code goes here
break;
default:
// code goes here
break;
}
์ด์ ๋ํ ์ต์ ์ด ์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค. "์ ์์ ์ธ" ๋ฐฉ์(๋ด ํ์ ์์ฑ๋ switch ๋ฌธ์ ๋ณธ ๊ฒ์ฒ๋ผ) ๋๋ ์์์ ์ค๋ช ํ ๋ฐฉ์ ์ค ํ๋์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ์ด์ธ์ ๋ชจ๋ ๊ฒ. ๊ฐ์ธ์ ์ผ๋ก ๋์ํ์ง ์๊ฑฐ๋ ํจ์น๊ฐ ํ์ํ๋ค๊ณ ์๊ฐํ์ง ์๋๋ค๋ฉด ํจ์น์ ๋ง์์ ์ฌ์๊ฒ ์ต๋๊น?
์ ๋ง ๊ฐ์ฌํฉ๋๋ค.
์ด์ ๋ํ ์ต์ ์ด ์์ต๋๊น? ๊ทธ๋ฅ jslint happy์ ์ถ๊ฐํ ๊น์?
switch ๋ฌธ์ ์์ฑํ ๊ณต๋ฐฑ์ ๋์ง๋ ๊ฒ์ ์ซ์ดํ์ญ์์ค.
@drewhjava ์ด ์ต์ ์ ์์ฒญํ๋ ์ด ๋ฒ๊ทธ๋ฅผ ์ฐธ์กฐํ๋ ๋ฒ๊ทธ๋ฅผ ์์ ๋กญ๊ฒ ์ฌ์ญ์์ค.
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์ ๊ฒ ๊ฐ์ต๋๊น?
๋๋ ์ฌ์ ํ ๋ชป์๊ธด ์ค์์น ๋ฏธํ๋ฅผ ์ป์ต๋๋ค. ์ด๊ฑฐ ๊ณ ์ณ์ง์ง ์์๋์?
์
switch (v) {
case 1:
break;
case 2:
break;
case 3:
break;
default:
break;
}
์ํด. jsbeautifier.org์ "jslint-happy" ์ฒดํฌ๋ฐ์ค๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
์๋ฒฝํฉ๋๋ค :) ๊ฐ์ฌํฉ๋๋ค.
์ด ๋ค์ฌ์ฐ๊ธฐ ๋ฌธ์ ๋ Windows์ OSX์ ๋์ผํ ์ฝ๋์์ ๋ค๋ฆ
๋๋ค. ์ ์ ํ ์๋ https://github.com/gpujs/gpu.js ์
๋๋ค. yarn make
์คํํ๋ฉด ๋ค์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ ./src
ํด๋๋ฅผ ์๋ฆ๋ต๊ฒ ํฉ๋๋ค. https://github.com/ gpujs/gpu.js/blob/012cfff566691a8fa360e0af650a45c616ceff4a/gulpfile.js#L85
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
IMHO, ๊ทธ๊ฑด ์ ๋ง ๋ง์ด ์ ๋ฉ๋๋ค. ์ถ๊ฐ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ์๋ตํ Crockford์ ๋ ผ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. โ๊ฐ ์ผ์ด์ค๋ ์ค์์น์ ์ ๋ ฌ๋ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๊ณผ๋ํ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ๋ฐฉ์งํ ์ ์์ต๋๋ค.โ ์ค๋ฅผ๋ฆฌ?
๊ทธ๋๋ ๋น์ ์ ์์ ์ ์๊ฒ ์ต๋๋ค. ์๋์ ์ผ๋ก ์ค๊ณ๋ ๊ฒ์ด๊ณ ๊ทธ๋ฐ ์์ผ๋ก ๋ง์์ ๋ค๋ฉด ๊ทธ๋๋ก ๋์ญ์์ค!