Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JavaScript小史
Search
badatmath
April 02, 2012
Programming
4.9k
13
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JavaScript小史
JavaScriptの歴史、です。
badatmath
April 02, 2012
More Decks by badatmath
See All by badatmath
Rickshaw
badatmath
0
400
Node.js入門
badatmath
20
10k
Other Decks in Programming
See All in Programming
CSC307 Lecture 17
javiergs
PRO
0
320
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
5.9k
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
170
さぁV100、メモリをお食べ・・・
nilpe
0
140
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
3
1.3k
Creating Composable Callables in Contemporary C++
rollbear
0
130
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
5.8k
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
170
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
3
450
A2UI という光を覗いてみる
satohjohn
1
130
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Crafting Experiences
bethany
1
180
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The Invisible Side of Design
smashingmag
302
52k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
The Limits of Empathy - UXLibs8
cassininazir
1
360
Design in an AI World
tapps
1
240
Faster Mobile Websites
deanohume
310
31k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Transcript
JavaScript History :VTVLF4IJOP[BLJ !CBE@BU@NBUI
ࣗݾհ :VTVLF4IJOP[BLJ !CBE@BU@NBUI IUUQEIBUFOBOFKQCBEBUNBUI
͓ͳ͢͠Δ͜ͱ +BWB4DSJQUͷྺ࢙ ॳظ தظ ݱ 90-00 01-05 06~
+4Ҏલ 1990: Tim Berners-Lee WorldWideWeb ্࢙ॳͷϒϥβ͕ੜ ’90
Knight Commander of the British Empire 2004: Sir Tim Berners-Lee
ࠓͰʮφΠτʯ༷ɻ ͪͳΈʹ
ͪͳΈʹ WorldWideWeb 1.0 εϖʔεͳ͠
+4Ҏલ 1993: NCSA NCSA Mosaic 1.0 ը૾ͱςΩετΛ̍ϖʔδʹɻ ϓϩτίϧͨ͘͞Μ ➟ Mosaic
’93
/FUTDBQF ’94 1994 April 4th ॳ Mosaic Communication Corporation SGINCSA
MosaicνʔϜ͔Βٕज़ऀҾ͖ൈ͖ 1994 October 13th Mosaic Netscape 0.9ϦϦʔε Netscape Navigator ʹվশ
’94 /FUTDBQF 1994 Dec Netscape Navigator 1.0 ඪ४ʹ४ڌͯ͠ͳ͍෦େʹݟͯͶ—
/FUTDBQF ’95 1995 May 23rd ˏSun World Conference ϒϥβʹJavaɺࡌ͚ͬ·͢ɻ
/FUTDBQF ’95 ͔͠͠ Java Applet ෳࡶ ॳ৺ऀʹ͍͍ͯͳ͍
/FUTDBQF ’95 ͬͺΓ εΫϦϓτݴޠͩΑͶʂ
’95 /FUTDBQF Scheme
/FUTDBQF ’95
/FUTDBQF ’95 Scheme
/FUTDBQF ’95 1995 April Brendan Eich টᡈ
#SFOEBO&JDI ’95 ʮSchemeͷʁʯ ΧοίେਿͩΖjk ʮʂʂʂʂʂʂʯ
-JWF4DSJQU ’95 ظͰ࣮ ே࣌̕ग़ۈ ̎࣌ୀۈ
’95 +BWB4DSJQU ࣏తͳཧ༝ʹΑΓ վশ Sunͱͷܖ
Scheme Self Java +BWB4DSJQUϨγϐ 4NBMMUBML༝དྷͷ ΦϒδΣΫτࢦݴޠ 4VO͕։ൃͨ͠Ͳ͜Ͱ ಈ͘ΦϒδΣΫτࢦݴޠ -*41ͷ࣮ͷҰͭ
+BWB4DSJQUϨγϐ Scheme Self Java 4DIFNFͱ4FMGΛ ͋ΘͤΔɻ τοϐϯάʹ+BWBΛ গʑৼΓ͔͚Δ
+BWB4DSJQU Netscape Navigator 2.0 ’96 ՚ʑ͘͠ొʂ
+BWB4DSJQU ’96 ޙ
+BWB4DSJQU Netscape Navigator 2.01 ’96 ϦϦʔεʂ
+BWB4DSJQU Netscape Navigator 2.01 ’96 ॳظઃఆʹ ʮJavaScriptΛ༻͠ͳ͍ʯ Ճ
Ұํͦͷࠒ ϥΠόϧʁ
4QZHMBTT *OD NCSAͷ͋Δٕज़Λ ༻Խ͢ΔӦۀ෦ୂతاۀ
4QZHMBTT *OD NCSA MosaicͷϥΠηϯε ͳͷͰͪΖΜ
4QZHMBTT *OD ϥΠηϯε Microsoft \ ’95 $2,000,000
Microsoft Internet Explorer 1.0 ’95 1995 August 24th ςʔϒϧͷදࣔ͑͞Ͱ͖ͳʢ͈́
Microsoft ’96 NetscapeΛܸ
’96 Microsoft Internet Explorer 3.0 JScriptͷੜ ෆ۩߹͍Ζ͍Ζ͚͋ͬͨͲɾɾ
’96 Netscape Ӵઓ
+4ඪ४Խͷಓ HTMLΈͨ͘ޓੑͷ͋Δͷʂ ’96 ඪ४ԽͰओಋݖѲΕMSා͘ͳ͍ʂ
+4ඪ४Խͷಓ W3Cʁ Ͳ͜ʹ͓Ͷ͕͍͢Δ͔ ’96 ͖ͬͱɾɾɾɺ ౖͬͯΔΑͶʁ Βͷϒϥβɺ ४ڌͯ͠ͳ͍Ͷɻ
ඪ४Խͷಓ ݁ہϤʔϩού ’96
ඪ४Խͷಓ δϡωʔϒʹຊ෦ ECMA ’96 ࠃࡍඪ४Խػؔ
ඪ४Խͷಓ 1997 June ECMA-262 (ECMAScript) ’97
ඪ४Խͷಓ JavaScript ≒ ECMAScript
ඪ४Խͷಓ JavaScript = ECMAScript + α JavaScript ≒ ECMAScript
+BWB4DSJQUͱ
&$."4DSJQU 1st ϛχϚϜ༷ 2nd υΩϡϝϯτमਖ਼ ’98 ’97
&$."4DSJQU 3rd Τϥʔॲཧਖ਼نදݱɺStringڧԽ ॲཧܥඦՖ៶ཚ ’99 ଟ͘ͷΞϓϦέʔγϣϯʹ
ϒϥβઓ૪ Netscape Microsoft vs γΣΞΣΞ ແঈ OSόϯυϧ Windows Mac
ϒϥβઓ૪ Netscape Microsoft vs OSόϯυϧ Windows Mac γΣΞΣΞ ແঈ W
IN! Loose!
ॳظͷ͓ͳ͠ ͜Ε͘Β͍Ͱ͢ɻ
தظͷ͓ͳ͠ ࣮ଟ͋͘Γ·ͤΜ
*& ϒϥβࢢΛ΄΅ಠ Pax IE! ’01
*& W3Cඪ४ʹ४ڌ͍ͯ͠ͳ͍ Ͳ͔ͬͰݟͨ ͩ͘ΓͩΑͶʁ
*& ঃʑʹଞϒϥβͷϚʔέοτ֦େ ηΩϡϦςΟϗʔϧ࣍ʑͱ W3Cඪ४ʹ४ڌ͍ͯ͠ͳ͍
"KBY 2005 Feb, 15 Jesse James Garrett ’05 ΈࣗମҎલ͔Β Ajax໋໊
΄΅*&͕ࢧ͠ɺ ੈͷதฏͰͨ͠
Ͱ͕͢૪ཚͷ࣌ʹ ಥೖ͠·͢
ϥΠϒϥϦઓ script.aculo.us prototype.js jQuery
ϒϥβઓʢ࠶ʣ Mozilla Google Opera Microsoft Apple
ϒϥβઓʢ࠶ʣ ࠓճͷ૪ JSΛ͍͔ʹߴ ʹ࣮ߦͰ͖Δ͔
ϒϥβઓʢ࠶ʣ ࠓճͷ૪ AjaxΞϓϦͷ಄ ͔ʹߴ ͖Δ͔
ϒϥβઓʢ࠶ʣ WEBඪ४ͷ४ڌ ࠓճͷ૪
Mozilla Google Opera Microsoft Apple ϒϥβઓʢ࠶ʣ
ͦ͏͍͑ඪ४ʁ ES4ʁ
&4 Class Interface ... ޓੑɾɾɾ
%PVHMBT$SPDLGPSE
͋ͱ+40/ KTMJOUɺKTNJOͳͲ %PVHMBT$SPDLGPSE l5IF(PPE1BSUTz
%PVHMBT$SPDLGPSE &4աڈόʔδϣϯͱඇޓ ͜Ε͕ඪ४Խ͞ΕΔͱੈͷத #BE1BSUTʹຒΊਚ͘͞ΕΔʂ
%PVHMBT$SPDLGPSE ECMAʹΧνίϛ
%PVHMBT$SPDLGPSE ECMAʹΧνίϛ W IN!
%PVHMBT$SPDLGPSE ʮεϚϯͳ"EPCFʯ
"EPCF w"DUJPO4DSJQU ʮ͋ɾɾ"DUJPO4DSJQUग़ͯ͠ ͨΓ͢Δ͚Ͳɺɾɾผʹɾɾʯ
"EPCF w"DUJPO4DSJQU JSؔ࿈ͰϗϯτʹπΩ͕ͳ͍ɻ ES4͔͠Γɺ Τϯδϯ(tamarin)͔͠Γɻ
ؾΛऔΓͯ͠&4 ES3.1ϕʔε JSONαϙʔτ StrictϞʔυͳͲ
&4IBSNPOZ ઈࢍٞத
ͯ͞
*&͞Μͷੜଉঢ়گ
*&$PVOUEPXO http://www.ie6countdown.com/
Ruby PHP Apache Browser ΞʔΩςΫνϟͷมભ )5.-
4FSWFS4JEF 2009 Node.jsੜ V8: ϒϥβઓ૪ͷࣀ ’09
SSP, SPAϞσϧͷ಄ Twitter, Facebook ΞʔΩςΫνϟͷมભ
$MJFOU4JEF Client-Side MVC Smartphone
APIαʔό CDN Browser ΞʔΩςΫνϟͷมભ +40/ )5.-JNBHF TUBUJDBTTFUT ˞ͪΖΜ·ͩओྲྀͰͳ͍͚Ͳɻ
Node Browser Client͔ΒServer·ͰJSͰͰ͖ΔΑʂʂ ΞʔΩςΫνϟͷมભ CDN +40/
ͱΓ·ٕ͘ज़มભ
+BWB4DSJQU &7&3:8)&3&
5IBOLT