---
# System prepended metadata

title: AP-CSP Intro to JavaScript
tags: [apcsp txt, cs]

---

###### tags: `apcsp txt` `cs`
AP-CSP Intro to JavaScript
===
Table of Contents
---
- [Front Matter](/wV0cyxtyRUWkR0GzyE_yCw#Front-Matter)

[//]: # (put a / in front of address to avoid link symbol in output)
[//]: # (URL for replit assets example: https://28f7110b-3ce8-49d6-b340-8c67add3b3e0.id.repl.co/CSAssets/CS1cover.jpg)

1 What is JavaScript?
---
- [1.1 What is a Computer Program?](/BfGh-JrBT0u6NVrhwUVAzg#1---What-is-JavaScript)
- [1.2 Writing a Computer Program](/BfGh-JrBT0u6NVrhwUVAzg#12-Writing-a-Computer-Program)
- [1.3 Variables](/BfGh-JrBT0u6NVrhwUVAzg#13-Variables)
- [1.4 Input & Output](/BfGh-JrBT0u6NVrhwUVAzg#14-Input-amp-Output-IO)
- [1.5 Types of Values & Operators](/BfGh-JrBT0u6NVrhwUVAzg#15-Types-of-Values-amp-Operators)

2 Control Flow
---
- [2.1 The IF statement](/dQjJE8Z0T4OmXBc3xWaRNg#2---Control-Flow)
- [2.2 The WHILE statement](/dQjJE8Z0T4OmXBc3xWaRNg#22-The-WHILE-statement)
- [2.3 The FOR loop](/dQjJE8Z0T4OmXBc3xWaRNg#23-The-FOR-loop)
- [2.4 The SWITCH/CASE statement](/dQjJE8Z0T4OmXBc3xWaRNg#24-The-SWITCHCASE-statement)
- [2.5 Commenting Revisited](/dQjJE8Z0T4OmXBc3xWaRNg#25-Commenting-Revisited)
- [2.6 Nesting](/dQjJE8Z0T4OmXBc3xWaRNg#26-Nesting)
- [2.7 Simple Functions](/dQjJE8Z0T4OmXBc3xWaRNg#27-Simple-Functions)
- [2.8 Scope & Global Variables](/dQjJE8Z0T4OmXBc3xWaRNg#28-Scope-amp-Global-Variables)
- [2.9 Methods](/dQjJE8Z0T4OmXBc3xWaRNg#29-Methods)

3 JavaScript & Micro-controllers
---
- [3.1 Controlling Microcontrollers](/UCN58IYyQWCW_yccKGrnrA#3---JavaScript-amp-Micro-controllers)
- [3.2 Programmable Circuits](/UCN58IYyQWCW_yccKGrnrA#32-Programmable-Circuits)
- [3.3 Sensors & Time](/UCN58IYyQWCW_yccKGrnrA#33-Sensors-amp-Time)
- [3.4 Arrays & Data Logging](/UCN58IYyQWCW_yccKGrnrA#L34)
- [3.4 Motors & Robots](https://hackmd.io/UCN58IYyQWCW_yccKGrnrA#35-Motors-amp-Robots)

4 JavaScript & Browsers
---
- [4.1 Replit.com & HTML](https://hackmd.io/7WLwfM2vTLqWJlCwld4DEA#4---JavaScript-and-Browsers)
- [4.2 HTML Events & JavaScript](/7WLwfM2vTLqWJlCwld4DEA#42-HTML-Events-amp-JavaScript)
- [4.3 JavaScript Objects & the DOM](/7WLwfM2vTLqWJlCwld4DEA#43-JavaScript-Objects-amp-the-DOM)
- [4.4 Debugging Strategies](/7WLwfM2vTLqWJlCwld4DEA#44-Debugging-Strategies)
- [4.5 Graphics with P5.js](/7WLwfM2vTLqWJlCwld4DEA#45-Graphics-with-P5js)
- [4.6 Reading Files](/7WLwfM2vTLqWJlCwld4DEA#46-Reading-Files)

5 Wireless
---
- [5.1 Infrared (IR)](/k1qMrT7NSNaFEZkfFYMPEg#5---Wireless)
- [5.2 Radio Frequency (RF)](/k1qMrT7NSNaFEZkfFYMPEg#52-Radio-Frequency-RF)
- [5.3 Bluetooth & RFID](/k1qMrT7NSNaFEZkfFYMPEg#53-Bluetooth-amp-RFID)

6 Internet of Things
---
- [6.1 The Internet](/WAmboP-BRU2fWs-iRpKOKQ#6---Internet-of-Things)
- [6.2 Clients, Servers & AJAX](/WAmboP-BRU2fWs-iRpKOKQ#62-Clients-Servers-amp-AJAX)

Appendices
---
- [1 Syntax Quick Reference](/dV3BMdFESj2RgfRcb2yszw#Appendix-1---Syntax-Quick-Reference)
- [2 SVG Graphics](/dV3BMdFESj2RgfRcb2yszw#Appendix-2---SVG-Graphics)
- [3 Additional Demos](/dV3BMdFESj2RgfRcb2yszw#Appendix-3---Additional-Demos)
- [4 Apps with DroidScript](/dV3BMdFESj2RgfRcb2yszw#Appendix-4---Apps-with-DroidScript)
