두 번째 자바스크립트 프로그램은 사용자가 이름을 입력하도록 요청하고, 맞춤형 인삿말을 표시한다.
let username;
username = prompt("what's your name?")
alert("Hello, " + username)
여기서는 새로운 개념이 등장한다. let 이라는 변수를 선언하는 부분이다. 변수는 프로그램이 실행되는 동안 값을 저장할 수 있는 주기억 장치상의 공간을 뜻한다. 프로그램이 무엇을 하는지에 따라 값이 변경될 수 있기 때문에 변수라고 한다. 변수를 선언하는 것은 모형 어셈블리 언어에서 했던 것처럼 메모리 위치에 이름을 지정하는 일의 고수준 언어 버전이다. 비유하자면 선언문은 등장인물, 즉 희곡에 나오는 인물의 목록을 명시한다. 여기서는 변수를 username으로 지정하고,이 프로그램에서 맡은 역할을 말해준다.
prompt는 자바스크립트 라이브러리 함수이다. alert와 유사하지만 사용자에게 입력을 요청할 수 있다. 이후 그 입력한 텍스트가 무엇이든 사용할 수 있고 그 값은 = 로 연결된 username으로 할당된다.
=는 "오른쪽에 있는 연산을 수행하고 그 결과를 왼쪽에 있는 이름으로 된 변수에 저장하라" 는 의미이다. 이는 모형 컴퓨터에서 누산기 값을 메모리에 저장하는 것과 같다.
이 연산을 할당(assignment)라고 하며, 등호는 동등하다는 뜻이 아니라 값을 복사한다는 것을 뜻한다.
마지막으로 플러스 기호 + 가 사용되는데
alert("hello," + username)
이는 hello라는 단어와 사용자가 입력한 이릅을 결합하기 위해 사용된 것이다. 여기서도 플러스는 더하는 것이 아니라 텍스트 문자로 이루어진 두 문자열을 연결하는 것을 의미한다.