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
LintオタクによるLint解説 / Introduction to Lints
Search
Kuniwak
PRO
November 18, 2022
Programming
29
13k
LintオタクによるLint解説 / Introduction to Lints
https://lintnight.connpass.com/event/263931/
Kuniwak
PRO
November 18, 2022
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
DeNA での思い出 / Memories at DeNA
orgachem
PRO
3
1.3k
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
17
4k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
4
350
テストケースの名前はどうつけるべきか?
orgachem
PRO
2
590
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
4.5k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
180
HOME VR
orgachem
PRO
1
810
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.5k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.5k
Other Decks in Programming
See All in Programming
A Gopher's Guide to Vibe Coding
danicat
0
170
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
110
開発チーム・開発組織の設計改善スキルの向上
masuda220
PRO
13
7.2k
ワープロって実は計算機で
pepepper
2
1.4k
ソフトウェアテスト徹底指南書の紹介
goyoki
1
110
CSC305 Summer Lecture 04
javiergs
PRO
1
100
kiroでゲームを作ってみた
iriikeita
0
180
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
200
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
po3rin
8
980
STUNMESH-go: Wireguard NAT穿隧工具的源起與介紹
tjjh89017
0
380
コーディングは技術者(エンジニア)の嗜みでして / Learning the System Development Mindset from Rock Lady
mackey0225
2
570
decksh - a little language for decks
ajstarks
4
21k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Rails Girls Zürich Keynote
gr2m
95
14k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Speed Design
sergeychernyshev
32
1.1k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Bash Introduction
62gerente
614
210k
Producing Creativity
orderedlist
PRO
347
40k
Designing for humans not robots
tammielis
253
25k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Gamification - CAS2011
davidbonilla
81
5.4k
Transcript
-JOUΦλΫʹ ΑΔ-JOUղઆ -JOU/JHIU,VOJXBL
,VOJXBL 7JNTDSJQUͷ-JOUͰ͋Δ7JOUͷ࡞ऀɻ -JOU͕͖͗ͯ͢Φʔϓϯιʔεͷ -JOUͷίʔυΛಡΈړ͍ͬͯΔɻ Ͱ-JOUͷ։ൃ͍ͯ͠Δɻ 2
͜ͷൃදͰ͍͑ͨ͜ͱ 3
4 -JOUͷڭཆ -JOUͱ -JOUͷݕग़͢Δ -JOUͷߏ -JOUͷޮՌతͳ͍ํ
5 -JOUͷڭཆ -JOUͱ -JOUͷݕग़͢Δ -JOUͷߏ -JOUͷޮՌతͳ͍ํ
ίʔυͱઃఆΛೖྗͱͯ͠ϓϩάϥϜͷΛ੩తʹ ݕग़͢Δπʔϧͷ͜ͱ ࣗવݴޠͰॻ͔ΕͨจॻͱઃఆΛೖྗͱͯ͠ จॻͷΛݕग़͢Δπʔϧͷ͜ͱ 6 -JOUͱʢ߹ҙ͞Εͨఆٛͳ͍ͷͰҙʣ 1 2
ίʔυͱઃఆΛೖྗͱͯ͠ϓϩάϥϜͷΛ੩తʹ ݕग़͢Δπʔϧͷ͜ͱ ࣗવݴޠͰॻ͔ΕͨจॻͱઃఆΛೖྗͱͯ͠ จॻͷΛݕग़͢Δπʔϧͷ͜ͱ 7 -JOUͱʢ߹ҙ͞Εͨఆٛͳ͍ͷͰҙʣ 2 ੩తʹݕग़͢ΔͱɺϓϩάϥϜΛ ࣮ࡍʹ࣮ߦ͢Δ͜ͱͳ͘Λ ݕग़͢Δͱ͍͏ҙຯ
1
:BDDͰ༗໊ͳ4$+PIOTPO͕ʹ։ൃͨ͠$ݴޠͷ ੩తݕࠪثͷ໊લ͕-JOUͩͬͨ͜ͱʹ༝དྷ͢Δɻ ࠓͰ͜ͷ-JOUʹࣅͨ੩తݕࠪثશൠ͕-JOUͱݺΕ͍ͯΔɻ ͱͱ-JOUͱࢳͣ͘ͷҙຯͰɺࢳͣ͘औΓΛΠϝʔδͯ͠ -JOUͱ໊͚ΒΕͨΒ͍͠ɻ UFYUMJOUͷొ͔Β-JOUͷࢦ͢੩తݕࠪثࣗવݴޠͷจॻΛ ରͱ͢Δͷʹ·Ͱ͕͍ͬͯΔɻ 8 -JOUͷ໊લͷ༝དྷ
9 -JOUͷڭཆ -JOUͱ -JOUͷݕग़͢Δ -JOUͷߏ -JOUͷޮՌతͳ͍ํ
-JOU͕ ݕग़͢Δ ॲཧܥ͕੩తʹ ݕग़͢Δ ୯७ͳઃఆΛͱʹ੩తʹݕग़Ͱ͖Δ ϓϩάϥϜͷͷ͏ͪɺॲཧܥ ʢίϯύΠϥΠϯλϓϦλʣ͕ ݕग़͠ͳ͍ͷɻ ࣗવݴޠͷʹ͍ͭͯಈ੩ͷ
֓೦͕ͳ͍ͷͰ͍͍ͩͨશ෦ɻ -JOUͷݕग़͢Δ 10
11 -JOU͕ ݕग़͢Δ ॲཧܥ͕੩తʹ ݕग़͢Δ ॲཧܥͱ-JOUͷݕग़ରݴޠ͝ͱʹҟͳΔ -JOU͕ ݕग़͢Δ
ॲཧܥ͕੩తʹ ݕग़͢Δ 5ZQF4DSJQU $ (P 1FSM 3VCZ +BWB4DSJQU
12 -JOUͷݕग़͢Δͷྫ ఆٛʹ߹ҙͷऔΕͳ͍ ಈతʹ͔͠ݕग़͞Ε͍ͯͳ͍ 1 2
13 ͷఆٛʹ߹ҙͷऔΕͳ͍ͷ ݹདྷΑΓਓྨίʔσΟϯάελΠϧͰ૪͖ͬͯͨɻ ͍·૪͍ͷܾண͍͍ͭͯͳ͍ͨΊॲཧܥ͕ ίʔσΟϯάελΠϧΛݕࠪ͢Δ͜ͱ ΄ͱΜͲͳ͘ɺ-JOUͷׂʹͳ͍ͬͯΔɻ ͨͩ͠Ұ෦ͷॲཧܥΠϯσϯτΛ ݕࠪ͢Δ͜ͱ͕͋ΔʢΦϑαΠυϧʔϧͱ͍͏ʣɻ 1
14 ͷఆٛʹ߹ҙͷऔΕͳ͍ͷ ͲͷϑϨʔϜϫʔΫΛ͏͔ɺ͋Δ͍Θͳ͍͔ ࣗ༝Ͱ͋ΔͷͰɺϑϨʔϜϫʔΫݻ༗ͷ͍ํͷ ॲཧܥ͕ݕग़͢Δ͜ͱͳ͍ɻ-JOUͷग़൪ɻ 1
15 ಈతʹ͔͠ݕग़͞Ε͍ͯͳ͍ ಈతʹݕग़͞ΕΔΛ੩తʹݕग़͢Δͷ-JOUͷ ׂͷ̍ͭɻ࠷ۙͰ͞·͟·ͳಈతܕݕ͖ࠪͭ ϓϩάϥϛϯάݴޠʹ੩తܕݕࠪΛ͢Δ-JOU͕ ొ͍ͯ͠ΔʢNZQZ 'MPX 4PSCFU 1)14UBO ʣɻ
2
16 -JOUͷڭཆ -JOUͱ -JOUͷݕग़͢Δ -JOUͷߏ -JOUͷޮՌతͳ͍ํ
ςετɾϨϏϡʔҎ߱Ͱݕग़͞Ε͍ͯͨ Λ-JOUͰݕग़͢Δ 17 -JOUͷޮՌతͳ͍ํ
18 ͳͥޮՌతͱओு͍ͯ͠Δͷ͔
19 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ Λ
ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
20 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ ্͔Βॱʹݕࠪ͞ΕΔ 9
Λ ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
21 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ Λݕग़͢Δͱࢭ·Δ 9
Λ ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
22 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ 9 : ্ͷํͷखஈͰࢭ·Δͱ
ίετͰΛݕग़Ͱ͖Δ ಛघͳԼͷํͷ खஈͰ͔͠ݕग़Ͱ͖ͳ͍ Λ ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
23 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ -JOU͜ͷҐஔ
Λ ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
24 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ ͠-JOUΛ͍ͬͯͳ͍ͱɺ -JOUͰݕग़Ͱ͖ΔΛΑΓ ߴίετͳςετϨϏϡʔͰ
ݕग़͠ͳ͍ͱ͍͚ͳ͘ͳΔ ܕΤϥʔ ػೳͷޡ༻ Λ ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
25 ߏจղੳ -JOUίϯύΠϧ࣌ݕࠪ ୯ମɾ݁߹ςετϨϏϡʔ γεςϜςετ ຊ൪ڥͰͷΤϥʔऩू Ϣʔβʔ͔Βͷ͓͍߹Θͤ -JOUΛ͏͜ͱͰɺΑΓ ίετͰΛݕग़Ͱ͖Δ ܕΤϥʔ
ػೳͷޡ༻ Λ ݕ ग़ ͢ Δ ͨ Ί ͷ ख ஈ
26 Ͳ͏࣮ͬͯݱ͢Δͷ͔
27 -JOUΛ࣮ͬͨݱํ๏ͷྫ w ܕΤϥʔͷݕग़ ੩తܕݕࠪͷͰ͖Δ-JOUΛಋೖ͢Δ w ίʔσΟϯάελΠϧҧͷݕग़ -JOUͷઃఆΛڞ༗͢Δ͜ͱͰ࣮ݱͰ͖Δ
w ϓϩδΣΫτͰ࣮͞Εͨػೳͷޡ༻ͷݕग़ -JOUͷϧʔϧΛ࣮࣮ͯ͠ݱͰ͖Δ
28 -JOUΛ࣮ͬͨݱํ๏ͷྫ w ܕΤϥʔͷݕग़ ੩తܕݕࠪͷͰ͖Δ-JOUΛಋೖ͢Δ w ίʔσΟϯάελΠϧҧͷݕग़ -JOUͷઃఆΛڞ༗͢Δ͜ͱͰ࣮ݱͰ͖Δ
w ϓϩδΣΫτͰ࣮͞Εͨػೳͷޡ༻ͷݕग़ -JOUͷϧʔϧΛ࣮࣮ͯ͠ݱͰ͖Δ ͜ͷͨΊʹ-JOUͷ ߏΛΔඞཁ͕͋Δ
29 -JOUͷڭཆ -JOUͱ -JOUͷݕग़͢Δ -JOUͷߏ -JOUͷޮՌతͳ͍ํ
30 -JOUͷߏ w -JOUͷߏͲΕࣅ௨͍ͬͯΔͷͰɺͭΛ ಡΊΔΑ͏ʹͳΔͱଞͷಡΊΔΑ͏ʹͳΔ w ॲཧͷྲྀΕதؒσʔλ͕ҟͳΔ͚ͩͰ΄ͱΜͲಉ͡ w ѻ͏ओͳதؒσʔλɿ w
τʔΫϯྻ w நߏจ w ੍ޚϑϩʔάϥϑʢࠓճׂѪʣ
31 -JOUͷදతͳߏ ݕࠪϧʔϧΛԣஅ͢Δॲཧ ʢ$-*ͷఏڙɺݕࠪ༰қͳσʔλͷมɺݕࠪϧʔϧͷ࣮ߦʣ ݕࠪ ϧʔϧ ݕࠪ ϧʔϧ ݕࠪ ϧʔϧ
ݕࠪ ϧʔϧ ݕࠪϧʔϧ͝ͱʹݸผͷ ίϯϙʔωϯτͱ࣮ͯ͠͠ɺ ԣஅॲཧΛݕࠪϧʔϧʹ ґଘͤ͞ͳ͍ߏ͕΄ͱΜͲɻ ͳ͓-JOUͷίʔυΛಡΉ ࡍʹɺίʔυྔͷগͳ͍ ݕࠪϧʔϧ͔Β͕͓͢͢Ίɻ ґ ଘ ݩ ґ ଘ ઌ
32 -JOU ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ -JOUͷॲཧͷྲྀΕ
33 -JOU ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ίʔσΟϯάελΠϧΛݕࠪ͢Δ-JOUͷྫ ࣈ۟
ղੳ τʔΫϯྻ ʢޙड़ʣ ݕࠪ
34 ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ΑΓߴͳݕࠪΛ͢Δ-JOUͷྫ ߏจ ղੳ
ݕࠪ நߏจ ʢޙड़ʣ -JOU
35 ݕ͍ࠪͨ͠ ιʔείʔυ ݕग़ͨ͠ ͷҰཡ ॲཧͷྲྀΕͷൺֱ ࣈ۟ ղੳ ݕࠪ τʔΫϯྻ
ʢޙड़ʣ ݕ͍ࠪͨ͠ ιʔείʔυ ݕग़ͨ͠ ͷҰཡ ݕࠪ நߏจ ʢޙड़ʣ ߏจ ղੳ ͜ͷ෦͕ҟͳΔ͚ͩ
36 -JOU ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ίʔσΟϯάελΠϧΛݕࠪ͢Δ-JOUͷྫ ࣈ۟
ղੳ τʔΫϯྻ ʢޙड़ʣ ݕࠪ
37 τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console .
log τʔΫϯͱɺιʔείʔυͷ จࣈྻʹग़ݱ͢ΔҙຯΛ࣋ͬͨ ࠷খ୯Ґͷ͜ͱ
38 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console . log ؆୯ͳ+BWB4DSJQUͷιʔείʔυ ͷτʔΫϯΛݟͯΈΑ͏ ͜ͷίʔυͷઌ಄͔ΒॱʹԿ͕ τʔΫϯʹͳΔͷ͔Λݟ͍ͯ͘
39 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console . log τʔΫϯ
40 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console . log τʔΫϯ
41 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console . log τʔΫϯ
42 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console . log τʔΫϯ
43 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
τʔΫϯྻ τʔΫϯྻ function helloWorld ( ) { console . log τʔΫϯ
44 τʔΫϯྻ τʔΫϯྻ τʔΫϯͱɺιʔείʔυͷ จࣈྻʹग़ݱ͢ΔҙຯΛ࣋ͬͨ ࠷খ୯Ґͷ͜ͱ function helloWorld ( )
{ console . log
45 τʔΫϯྻ τʔΫϯྻ τʔΫϯྻͱɺιʔείʔυͷ จࣈྻʹग़ݱ͢ΔॱʹτʔΫϯΛ ฒͨͷ function helloWorld ( )
{ console . log
46 -JOU ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ίʔσΟϯάελΠϧΛݕࠪ͢Δ-JOUͷྫ ࣈ۟
ղੳ τʔΫϯྻ ʢޙड़ʣ ݕࠪ
47 -JOU ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ίʔσΟϯάελΠϧΛݕࠪ͢Δ-JOUͷྫ ࣈ۟
ղੳ τʔΫϯྻ ʢޙड़ʣ ݕࠪ
48 τʔΫϯྻ τʔΫϯྻ with ( obj ) { console .
log XJUIจͷར༻Λݕग़͢Δ-JOUͷ ॲཧͷྲྀΕΛΈͯΈΑ͏
49 τʔΫϯྻ τʔΫϯྻ with ( obj ) { console .
log // ېࢭ͞Ε͍ͯΔ with จΛ͍ͬͯΔ with (obj) { console.log(obj); }
50 τʔΫϯྻ τʔΫϯྻ with ( obj ) { console .
log // ېࢭ͞Ε͍ͯΔ with จΛ͍ͬͯΔ with (obj) { console.log(obj); }
51 τʔΫϯྻ τʔΫϯྻ with ( obj ) { console .
log // ېࢭ͞Ε͍ͯΔ with จΛ͍ͬͯΔ with (obj) { console.log(obj); } τʔΫϯྻͷઌ಄͔Βॱʹɺ τʔΫϯ͕XJUIΩʔϫʔυ͔ Ͳ͏͔ௐΔ͜ͱͰɺXJUIจͷ ༻Λݕग़Ͱ͖Δ
52 τʔΫϯྻ τʔΫϯྻ with ( obj ) { console .
log // ېࢭ͞Ε͍ͯΔ with จΛ͍ͬͯΔ with (obj) { console.log(obj); } XJUIΩʔϫʔυͷൃݟʹΑΓ XJUIจͷ༻Λݕग़Ͱ͖ͨ
53 ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ΑΓߴͳݕࠪΛ͢Δ-JOUͷྫ ߏจ ղੳ
ݕࠪ நߏจ ʢޙड़ʣ -JOU
54 ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ΑΓߴͳݕࠪΛ͢Δ-JOUͷྫ ߏจ ղੳ
ݕࠪ நߏจ ʢޙड़ʣ -JOU
55 நߏจͱɺݴޠ͝ͱͷنଇʹ ͕ͨͬͯ͠ιʔείʔυΛ ߏͰ͋ΒΘͨ͠ͷͷ͜ͱ நߏจ Program FuncDecl BlockStmt ExprStmt Identifier
CallExpr Identifier Identifier MemExpr Literal
56 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
؆୯ͳ+BWB4DSJQUͷιʔείʔυ ͷநߏจΛݟͯΈΑ͏ நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr Identifier Identifier MemExpr Literal நߏจΛཧղ͢Δʹɺ༿͔Β ରԠ͢Δ෦ΛΈ͍ͯ͘ͱΑ͍
57 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr Identifier MemExpr Literal Identifier
58 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr MemExpr Identifier Literal Identifier
59 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr Literal MemExpr Identifier Identifier
60 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr Identifier MemExpr Identifier Literal
61 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr Literal MemExpr Identifier Identifier
62 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr Literal MemExpr Identifier Identifier
63 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt Identifier CallExpr ExprStmt Literal MemExpr Identifier Identifier
64 /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); }
நߏจ Program FuncDecl BlockStmt Identifier CallExpr ExprStmt Literal MemExpr Identifier Identifier
65 ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ΑΓߴͳݕࠪΛ͢Δ-JOUͷྫ ߏจ ղੳ
ݕࠪ நߏจ ʢޙड़ʣ -JOU
66 ݕ͍ࠪͨ͠ ιʔείʔυ ݕࠪϧʔϧ ͝ͱͷઃఆ ݕग़ͨ͠ ͷҰཡ ΑΓߴͳݕࠪΛ͢Δ-JOUͷྫ ߏจ ղੳ
ݕࠪ நߏจ ʢޙड़ʣ -JOU
67 DPOTPMFMPHݺͼग़͠Λݕग़͢Δ -JOUͷॲཧͷྲྀΕΛΈͯΈΑ͏ நߏจ Program FuncDecl BlockStmt ExprStmt Identifier CallExpr
Identifier Identifier MemExpr Literal
68 நߏจΛਂ͞༏ઌͰ୳ࡧ͠ɺ ͍ͨ͠෦ͷࠜΛݟ͚ͭΔ ࠓճؔݺͼग़͠ʹ͍ͨ͠ ͷͰɺ$BMM&YQSཁૉΛ୳͢ நߏจ Program FuncDecl BlockStmt ExprStmt
Identifier CallExpr Identifier Identifier MemExpr Literal
69 நߏจ FuncDecl BlockStmt ExprStmt Identifier CallExpr Identifier Identifier MemExpr
Literal Program $BMM&YQSͰͳ͍ͷͰແࢹ
70 நߏจ BlockStmt ExprStmt Identifier CallExpr Identifier Identifier MemExpr Literal
Program FuncDecl $BMM&YQSͰͳ͍ͷͰແࢹ
71 நߏจ BlockStmt ExprStmt CallExpr Identifier Identifier MemExpr Literal Program
FuncDecl Identifier $BMM&YQSͰͳ͍ͷͰແࢹ
72 நߏจ ExprStmt CallExpr Identifier Identifier MemExpr Literal Program FuncDecl
Identifier BlockStmt $BMM&YQSͰͳ͍ͷͰແࢹ
73 நߏจ CallExpr Identifier Identifier MemExpr Literal Program FuncDecl Identifier
BlockStmt ExprStmt $BMM&YQSͰͳ͍ͷͰແࢹ
74 நߏจ Identifier Identifier MemExpr Literal Program FuncDecl Identifier BlockStmt
ExprStmt CallExpr $BMM&YQSΛൃݟͨ͠
75 நߏจ Identifier Identifier MemExpr Literal Program FuncDecl Identifier BlockStmt
ExprStmt CallExpr $BMM&YQSΛൃݟͨ͠Βɺ͜ͷ ؔݺͼग़͕͠DPOTPMFMPHͷ ݺͼग़͠Ͱ͋Δ͜ͱΛ֬ೝ͢Δ ۩ମతʹɺݺͼग़͠ର͕ DPOTPMF͔ΒMPHϓϩύςΟΛ ࢀর͢Δ.FN&YQSͰ͋Δ͜ͱΛ ֬ೝ͢Εྑ͍
76 நߏจ Literal Program FuncDecl Identifier BlockStmt ExprStmt CallExpr Identifier
Identifier MemExpr /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); } ݺͼग़͠ର͕DPOTPMFMPHͰ͋Δ͜ͱΛ֬ೝ
77 நߏจ Literal Program FuncDecl Identifier BlockStmt ExprStmt CallExpr Identifier
Identifier MemExpr /** ϋϩʔϫʔϧυΛදࣔ͢Δ */ function helloWorld() { console.log("Hello, World!"); } DPOTPMFMPHͷؔݺͼग़͠Λݕग़Ͱ͖ͨ
78 -JOUͷߏͷ͓͞Β͍ w -JOUͷߏͲΕࣅ௨͍ͬͯΔͷͰɺͭΛ ಡΊΔΑ͏ʹͳΔͱଞͷಡΊΔΑ͏ʹͳΔ w ॲཧͷྲྀΕதؒσʔλ͕ҟͳΔ͚ͩͰ΄ͱΜͲಉ͡ w ѻ͏ओͳதؒσʔλɿ w
τʔΫϯྻ w நߏจ w ੍ޚϑϩʔάϥϑʢࠓճׂѪʣ
·ͱΊ 79
80 -JOUͷڭཆ -JOUͱ -JOUͷݕग़͢Δ -JOUͷߏ -JOUͷޮՌతͳ͍ํ