Eveningstar

[기초 문법] 무언가를 실행하고 싶을 때 본문

Javascript

[기초 문법] 무언가를 실행하고 싶을 때

두루루루루 2018. 5. 27. 01:12

[알아둬도 딱히 쓸 곳 없는 지식]


->> 자바스크립트는 "인터프리터" 언어이다.


컴퓨터는 이진수인 0 과 1로 이루어진 machine code(기계어)만 인식할수있는데, 프로그래머(사람)는 주로 영어로 쓰이는 프로그래밍언어를 사용하여 프로그램을 만든다. 우리가 주로 Source Code라고 부른다. 아무튼 인터프리터는 source code(인간언어)를 machine code(컴퓨터언어)로 변환해주는 소프트웨어중 하나이다. 인터프리터 외에는 컴파일러라는 방법이 더 있는데,  C, C+같은 언어가 컴파일러 언어이다.

컴파일러와 인터프리터의 차이는 여러가지가 있지만, 하나는 변역 속도인데 책으로 예시를 들자면 인터프리터는 1문장 = 1줄 번역 이고 컴파일러는 1권 통째로 번역. 반대로 실행속도는 컴파일러>인터프리터.


 

[ 기초 문법 : 무언가를 실행시키고 싶을 때 javascript로]


S +  V + O 


자바스크립트 뿐만 아니라 프로그램의 기본은 컴퓨터에게 'xx해'하고 명령하는 것이다.

자바스크립트로 브라우저에게 명령하고 싶다면 기본적으로 'xx해라'이외의 '누가', '무엇을' 해야할지도 함께 지시해야한다.


예)  console.log('내용')  => console은 "내용"을 log해라(00은 --을 xx해라)


주어에 해당하는 것은 객체(object)

00해라라는 동사에 해당하는 것을 메서드(method)

목적어 00에 해당하는 것을 매개변수(parameter)라고 한다.



1) 객체


객체는 지시를 내리는 대상이다.

브라우저는 주소표시줄, 상태창, 콘솔 등으로 구성되어있는데 이런 것들이 자바스크립트로 조작하거나 상태를 읽어올수있도로 되어있다.

자바스크립트로 조작할 수 있는 부분을 "객체"라고 한다면 객체들은 이름을 가지고있다(품사로 따지면 고유명사!!)

자바스크립트에는 3가지 객체가 있는데 ① 내장객체 ② BOM(브라우저 객체 모델) ③ DOM(문서 객체 모델) 이 있다.


예제로 많이 보이는 Console 객체는 브라우저 객체에 속하며 아래 객체들은 여러 예제에서 흔히 사용되고 있다.


 - window 객체 : 윈도우 최상위 객체(document보다도 상위), 생략이 가능한 최상위객체이다.

 - history 객체

 - location 객체

 - document 객체

 - console 객체



2) 메서드

= 지시내용


객체 뒤에 마침표(.)를 찍고 메서드()를 표기한다.


메서드는 객체에 대해서 "무엇을 해라"라고 실행 내용을 표기해주는 파트이다. 예를 들어 window.alert()이란 메서드는 알럿창을 띄워라! 라는 명령을 브라우저에 내린다.(window는 생략가능)


메서드는 꼭 끝부분에 ()를 작성해야한다. 또한 객체마다 사용가능한 메서드()가 있다.(!)

 

 

 

우리가 흔히 사용하는 alert(), open(), prompt() 등등 이 속한 window 객체가 가지고 있는 메소드가 궁금하다면,  (크롬기준)F12를 누르고 콘솔에 console.dir(객체명); 을 작성해보자.

 

 

콘솔에 console.log(window)를 작성하면



 

윈도우 왼쪽에 접힌 화살표(▲) 를 펼쳐보면(▼) 어마어마한 양의 메소드와 기타등등을 살펴볼수있다. 히익,,,^^;

 

 


 

3) (매개변수)


메서드의 괄호 안에는 텍스트나 수식 등을 기술하여 지시에 필요한 정보를 넘겨준다.



*** 이외 ***


 "," 큰따옴표와 ',' 따옴표 사용에 주의할 것.



- 따옴표를 중복으로 사용해야할때


 

 "아아아아아 "안됨" 아아아아 " 




이런식으로 ""를 연속으로 사용할수없다.(암튼 에디터에서 어차피 린트 오류 뜨겠지만)



 

 "아아아아아  '' 아아아아 " 



이렇게 사용하거나 



 '아아아아아  "" 아아아아 '

 


이런식으로 번갈아가면서 사용해주면 된다.



*처음만나는자바스크립트

Comments