Study/JavaScript
-
JS 코딩의 기본 operator, if, for loopStudy/JavaScript 2020. 4. 20. 21:44
1. String concatenation console.log('my'+'cat'); //문자열 연산 console.log('1'+2); //문자열(숫자)과 숫자연산 console.log(`string literals: 1+2 = ${1+2}`); //string literals 2. Numeric operators console.log(1 + 1); // add console.log(1 - 1); // substract console.log(1 / 1); // divide console.log(1 * 1); // multiply console.log(5 % 2); // remainder console.log(2 ** 3); // exponentiation 3. Increment and decremen..
-
JS의 자료형Study/JavaScript 2020. 4. 20. 17:34
자바스크립트의 변수는 어떤 데이터든지 담을 수 있습니다. 변수는 어떤 순간에 문자열일 수 있고 다른 순간엔 숫자가 될 수도 있습니다. // 변숫값을 문자열에서 숫자로 바꿔도 에러가 발생하지 않습니다. let message = "hello"; message = 123456; 이처럼 자료의 타입은 있지만 변수에 저장되는 값의 타입은 언제든지 바꿀 수 있는 언어를 ‘동적 타입(dynamically typed)’ 언어라고 부릅니다. 자바스크립트에는 여덟 가지 기본 자료형이 있습니다. 이번 챕터에선 이 자료형 모두를 개괄적으로 다루도록 하겠습니다. 각 자료형에 대한 세부 사항들은 이어지는 챕터에서 다룰 예정입니다. 1. 숫자형 (number type) 2. BingInt (최근에 추가됨) 3. 문자형 (strin..
-
변수 명명 규칙Study/JavaScript 2020. 4. 20. 16:52
변수 명명 규칙 자바스크립트에선 변수 명명 시 두 가지 제약 사항이 있습니다. 변수명에는 오직 문자와 숫자, 그리고 기호 $와 _만 들어갈 수 있습니다. 첫 글자는 숫자가 될 수 없습니다. 다음은 유효한 변수명의 예시입니다. let userName; let test123; 여러 단어를 조합하여 변수명을 만들 땐 카멜 표기법(camelCase)가 흔히 사용됩니다. 카멜 표기법은 단어를 차례대로 나열하면서 첫 단어를 제외한 각 단어의 첫 글자를 대문자로 작성합니다. myVeryLongName같이 말이죠. 달러 기호 '$' 와 밑줄 '_' 를 변수명에 사용할 수 있다는 점이 조금 특이하네요. 이 특수 기호는 일반 글자처럼 특별한 의미를 지니진 않습니다. 아래는 유효한 변수명에 관한 예시입니다. let $ = ..
-
자바스크립트의 엔진은 무엇이며, 어떻게 작동되는 것일까?Study/JavaScript 2020. 4. 20. 15:11
자바스크립트는 브라우저뿐만 아니라 서버에서도 실행할 수 있습니다. 이 외에도 자바스크립트 엔진(JavaScript engine)이라 불리는 특별한 프로그램이 들어 있는 모든 디바이스에서도 동작합니다. 브라우저엔 "자바스크립트 가상 머신"이라 불리는 엔진이 내장되어 있습니다. 엔진의 종류는 다양한데, 엔진마다 특유의 코드네임이 있습니다. 아래처럼 말이죠. V8 – Chrome과 Opera에서 쓰입니다. SpiderMonkey – Firefox에서 쓰입니다. IE는 버전에 따라 "Trident"나 "Chakra"라 불리는 엔진을 사용합니다. "ChakraCore"는 Microsoft Edge에 사용되며, "SquirrelFish"는 Safari에 사용됩니다. 위의 코드네임은 개발 관련 글에서 종종 언급되기 ..
-
자바스크립트 데이터타입(1)Study/JavaScript 2020. 4. 14. 19:26
자바스크립트 데이터타입(1) 프로그래밍언어에서 가장 중요한 것은 무엇인가? 입력, 연산, 출력. 이 세가지가 가장 메인 엑기스이다. 사용자에게 콘솔이나 ui에서 입력받은 데이터를 잘 처리하고 연산해서 알맞게 다시 사용자에게 출력해주는 것이 매우 중요하다. CPU에 최적화된 연산을 사용하는 것도 중요! 메모리의 사용을 최소화 하는 것도 중요! 한 포인트이다. 1. Use strict 순수 자바스크립트로 개발할 때에는, 맨 윗줄에 'use strict';를 사용하라. 그래야 자바스크립트가 가지고 있는 유연성을 없앰으로서 프로그래머의 실수를 줄일 수 있고, 자바스크립트 엔진이 조금 더 빠르게 효율적으로 분석할 수 있게 하여 성능개선까지 할 수 있다. 2. Variable let ( added i..
-
'use strict';Study/JavaScript 2020. 4. 14. 17:05
자바스크립트를 이용할 때는, 제일 윗부분에 'use strict'; 를 사용하는 것이 좋다. 타입스크립트를 사용할 때는 이 것을 쓰지 않아도 괜찮으나, 순수 자바스크립트를 사용할 때에는 이 것을 제일 윗부분에 쓰는 것이 좋다. why? 자바스크립트의 역사에서 보았듯이 , 브랜든이 자바스크립트를 만들 때 굉장히 빨리 만들어야 했고, 자바스크립트 언어는 굉장히 '유연한 언어'로 만들어졌다. 유연한 언어라는 것은 개발자가 굉장히 많은 실수를 할 수 있다는 말이다 . 자바스크립트에서는 선언되지 않은 변수의 값을 할당한다던지, 이런 말도 안되는 것들은 다른 언어를 공부하고 온 개발자들이 봤을 때, 약간 미친듯한 행동이다ㅋㅋㅋ 다행히도, ECMAScript5 에서부터, 'use strict'; 가 추가되었다. 그래..
-
조건문(5)__boolean의 대체제Study/JavaScript 2020. 4. 14. 16:59
조건문(5)__boolean의 대체제 조건문에 사용될 수 있는 데이터형이 꼭 불린만 되는 것은 아니다. 관습적인 이유로 0은 false, 0이 아닌 값은 true로 간주된다. 아래의 예제는 2를 출력한다. if(0){ alert(1); } if(1){ alert(2); }그러나 0과 숫자를 활용한 코드보다는 boolean을 이용하는게 좋다. 기타, false로 간주되는 데이터 형 다음은 false와 0외에 false로 간주되는 데이터형의 리스트이다. if문의 조건으로 !(부정) 연산자를 사용했기 떄문에 각 조건문의 첫번째 블록이 실행되는 것은 주어진 값이 false이기 떄문이다. if(!''){ alert('빈문자열'); } if(!undefined){ alert('u..
-
조건문(4)__논리 연산자Study/JavaScript 2020. 4. 14. 16:59
조건문(4)__논리 연산자 논리연산자는 조건문을 좀 더 간결하고 다양한 방법으로 구사할 수 있도록 도와준다. && &&는 '그리고, and'의 의미를 갖는다. &&는 좌항과 우항이 모두 참(true)일때 참이 된다. 다음 예제를 보자. 결과는 1이다. &&의 좌우항이 모두 true인 것은 첫번 째 조건문밖에 없기 때문이다. 이러한 논리연산자를 "and연산자" 라고 한다. if(ture && ture) { alert(1); } if(ture && false) { alert(2); } if(false && ture) { alert(3); }응용을 한다면 아래와 같다. || ||는 좌우항 중에 하나라도 ture라면 ture가 되는 논리 연산자. or연산자라고 부른다. 다음 예를 보자. 결과는 1..