Skip to content

ecmascript_1_1

KyusungDev edited this page Sep 11, 2017 · 4 revisions

ECMAScript

Ecma ์ธํ„ฐ๋‚ด์…”๋„

Ecma ์ธํ„ฐ๋‚ด์…”๋„์€ ์ •๋ณด์™€ ํ†ต์‹  ์‹œ์Šคํ…œ์„ ์œ„ํ•œ ๊ตญ์ œ์ ์ด๋ฉด์„œ๋„ ํšŒ์›๊ตญ ๊ธฐ๋ฐ˜์˜ ๋น„์˜๋ฆฌ ํ‘œ์ค€ํ™” ๊ธฐ๊ตฌ์ด๋‹ค. ์ด ์ด๋ฆ„์€ ์ด ๊ธฐ๊ตฌ์˜ ๊ตญ์ œ์  ํ™•์žฅ์„ ๋ฐ˜์˜ํ•˜์—ฌ 1994๋…„์— European Computer Manufacturers Association (ECMA)์—์„œ ๋ฐ”๋€ ๊ฒƒ์ด๋‹ค. ๊ทธ ๊ฒฐ๊ณผ ์ด ์ด๋ฆ„์€ ๋” ์ด์ƒ ๋‘๋ฌธ์ž์–ด๊ฐ€ ์•„๋‹ˆ๋ฉฐ ๋” ์ด์ƒ ๋Œ€๋ฌธ์ž๋งŒ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ด ๊ธฐ๊ตฌ๋Š” ์›๋ž˜ 1961๋…„์— ์œ ๋Ÿฝ์—์„œ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์„ ํ‘œ์ค€ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์„ธ์›Œ์กŒ๋‹ค. ๋ฉค๋ฒ„์‹ญ์€ ์œ ๋Ÿฝ์—์„œ ์ปดํ“จํ„ฐ๋‚˜ ํ†ต์‹  ์‹œ์Šคํ…œ์„ ์ƒ์‚ฐํ•˜๊ณ  ์‹œ์žฅํ™”ํ•˜๊ณ  ๊ฐœ๋ฐœํ•˜๋Š” ํšŒ์‚ฌ๋“ค์—๊ฒŒ ์—ด๋ ค ์žˆ๋‹ค. ์ด ๊ธฐ๊ตฌ๋Š” ์ œ๋„ค๋ฐ”์— ์œ„์น˜ํ•ด ์žˆ๋‹ค.

์ฐธ์กฐ : Ecma ์ธํ„ฐ๋‚ด์…”๋„

ECMAScript

Ecma ์ธํ„ฐ๋‚ด์…”๋„์˜ ECMA-262 ๊ธฐ์ˆ  ๊ทœ๊ฒฉ์— ์ •์˜๋œ ํ‘œ์ค€ํ™”๋œ ์Šคํฌ๋ฆฝํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋‹ค.

1996๋…„ 3์›”, ๋„ท์Šค์ผ€์ดํ”„์‚ฌ์—์„œ ์ถœ์‹œํ•œ ๋„ท์Šค์ผ€์ดํ”„ ๋„ค๋น„๊ฒŒ์ดํ„ฐ 2.0์„ ์ถœ์‹œํ•˜๋ฉด์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ง€์›ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜์˜€๋‹ค. ์›น ํŽ˜์ด์ง€ ๋™์ž‘์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ์–ธ์–ด๋กœ์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์„ฑ๊ณต์€ ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ๊ฐ€ ์ ๋‹นํžˆ ํ˜ธํ™˜๋˜๋Š” J์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜์—ˆ๋‹ค. J์Šคํฌ๋ฆฝํŠธ๋Š” 1996๋…„ 8์›”, IE 3.0์— ํฌํ•จ๋˜์–ด ์ถœ์‹œ๋˜์—ˆ๋‹ค. ๋„ท์Šค์ผ€์ดํ”„๋Š” ํ‘œ์ค€ํ™”๋ฅผ ์œ„ํ•ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ์ˆ  ๊ทœ๊ฒฉ์„ ECMA ์ธํ„ฐ๋‚ด์…”๋„์— ์ œ์ถœํ•˜์˜€๊ณ , ์ด ๊ทœ๊ฒฉ์— ๋Œ€ํ•œ ์ž‘์—…์€ ECMA-262์˜ ์ด๋ฆ„์œผ๋กœ 1996๋…„ 11์›”๋ถ€ํ„ฐ ์‹œ์ž‘๋๋‹ค. ECMA-262๋Š” ECMA Technical Committee 39(TC39)์—์„œ ์œ ์ง€ ๋ฐ ๊ฐœ์„ ํ•œ๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ J์Šคํฌ๋ฆฝํŠธ๋Š” ๋ชจ๋‘ ECMA์Šคํฌ๋ฆฝํŠธ์™€์˜ ํ˜ธํ™˜์„ ๋ชฉํ‘œ๋กœ ํ•˜๋ฉด์„œ, ECMA ๊ทœ๊ฒฉ์— ํฌํ•จ๋˜์ง€ ์•Š๋Š” ํ™•์žฅ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.

์ฐธ์กฐ : ECMA-262

ECMA-262
ECMA ์ธํ„ฐ๋‚ด์…”๋„์˜ ๊ธฐ์ˆ  ๊ทœ๊ฒฉ์„œ
ํ˜„์žฌ ECMAScript 2017(ES8)๊นŒ์ง€ ๋ฐœํ‘œ๋˜์—ˆ๋‹ค.

์ฐธ์กฐ : Standard ECMA-262

ECMAScript ๋ฒ„์ „

ecmascript_1_1_history

ECMAScript ๋ฒ„์ „๋ณ„ ๋ธŒ๋ผ์šฐ์ € ์ง€์›ํ˜„ํ™ฉ

์š”์•ฝ

  • ECMAScript๋Š” JavaScript ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์ •์˜ํ•˜๋Š” ๊ตญ์ œ ํ‘œ์ค€์˜ ์ด๋ฆ„
  • Ecma International ๊ตญ์ œ ํ‘œ์ค€ํ™” ๊ธฐ๊ตฌ์˜ Technical Committee 39(TC39)์—์„œ ๋…ผ์˜
  • ECMA-262 ๋ฐ ISO/IEC 16262๋กœ ๋ฐœํ–‰

๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์„ ๊ฐœ๋ฐœํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ด๋•Œ ํ•„์š”ํ•œ ๊ฐœ๋ฐœ ๋ช…์„ธ์„œ๊ฐ€ ECMA-262์ด๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—ญ์‚ฌ

  • 1995๋…„ 5์›” ๋„ท์Šค์ผ€์ดํ”„์˜ Brendan Eich๊ฐ€ ์—ดํ˜๋งŒ์— ๋งŒ๋“ฌ "๋ชจ์นด"
  • 1995๋…„ 9์›” ๋„ท์Šค์ผ€์ดํ”„ ๋„ค๋น„๊ฒŒ์ดํ„ฐ 2.0 ๋ฒ ํƒ€์— ํƒ‘์žฌ "๋ผ์ด๋ธŒ ์Šคํฌ๋ฆฝํŠธ"
  • 1995๋…„ 12์›” ๋„ท์Šค์ผ€์ดํ”„ 2.0b3 ํƒ‘์žฌ "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ"
  • 1996๋…„ 8์›” ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์—์„œ ๋ณต์ œํ•ด์„œ IE 3์— ํƒ‘์žฌ "JScript"
  • 1996๋…„ ~ 1997๋…„ ECMA์— ํ‘œ์ค€ํ™” ์š”์ฒญ, ECMA-262 1ํŒ์—์„œ ํ‘œ์ค€ํ™” "ECMAScript", "ES1"
  • 1999๋…„ ES3
  • 2000๋…„ ES4, ์ฒซ๋ฒˆ์งธ ์‹œ๋„
  • 2003๋…„ ~ 2004๋…„ E4X, ECMAScript๋ฅผ ์œ„ํ•œ XML ํ™•์žฅ
  • 2005๋…„ ~ 2007๋…„ ES4, ๋‘๋ฒˆ์งธ ์‹œ๋„
  • 2008๋…„ ES4 ๋ฒ„๋ ค์ง (ํ๊ธฐ)
  • 2009๋…„ ES5
  • 2011๋…„ ES5.1
  • 2015๋…„ 6์›” ES6(ES2015) ๋Œ€๊ทœ๋ชจ ์ˆ˜์ •, ES6๋ถ€ํ„ฐ TC39๋Š” ๋งค๋…„ ECMAScript ํ‘œ์ค€์„ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ•จ
  • 2016๋…„ 6์›” ES7(ES2016) ๋ฐœํ‘œ
  • 2017๋…„ 7์›” ES8(ES2017) ๋ฐœํ‘œ
  • ํ˜„์žฌ. ES9(ES2018) ๋…ผ์˜ ์ค‘ TC39 github

์ฐธ์กฐ

์Šค์ฝ”ํ”„

์Šค์ฝ”ํ”„ ์ฒด์ธ ๋ฌธ์ œ

ํ˜ธ์ด์ŠคํŒ…

์ฐธ์กฐ: 6.1 ECMAScript6 - let, const

Clone this wiki locally