리터럴(literal)
직접 표현되는 값 그 자체
식별자(identifier)
변수나 함수의 이름을 작성할 때 사용하는 이름
변수의 선언
var
,const
,let
var // 문제점이 let과 const로 보완되었기 때문에 잘 사용되지 않음 let // 변수 재선언은 불가하나 재할당은 가능함 const // constant 재할당이 불가능함 var javascript = 10; var JavaScript = 20; // 이 두 변수는 각각 다른 변수로 인식된다. var firstVar = 10; // Camel Case 방식 var my_first_func // Underscore Case 방식
var의 문제점과 개선사항
var
는 함수를 재선언해도 아무런 에러 없이 각기 다른 값이 출력 됨. 간단한 테스트에는 편리할 수 있으나 이 후 코드량이 많아질 경우 에러를 발생시킬 수 있어 재선언 할 수 없는let
과const
를 사용하게 됨
함수의 선언
매개변수(parameter)
,전달인자(argument)
function exam(parameter){} exam(argument)
매개변수와 전달인자는 어느 하나가 더 많아도 무시된다.
함수 이름짓기
show // 보여줌 get // 값을 얻고 그 값을 반환함 calc // 계산하고 그 결과를 반환함 create // 생성하고 만들어진 것을 반환함 check // 확인하고 true나 false를 반환함
= 할당연산자
=== 같다
키워드(keyword) 또는 예약어(reserved word)
특별한 단어로 사용하기 위해 지정된 단어
var
,let
,const
,return
,function
등
자바스크립트는 타입 검사가 매우 유연한 언어이다.
타입의 종류
string
number
booleanconsole.log(1 === '1') // false console.log(0 === false) // true -> 형변환 0,'' > falsy console.log(!true) // false console.log(!!true) // true console.log(!!!true) // false console.log(!0) // true
undefined
아무것도 할당하지 않은 변수는 undefined가 할당된다.null
이전에 할당된 값을 더이상 사용하지 않고 비어있는 상태로 둘 때 null을 사용한다.
symbol
함수(function)
논리적인 일련의 작업을 하는 하나의 단위, 작은 기능의 단위
구조
keyword name parameter body function Example ( ) { }
호출
name parameter Example (argument) ※ 주의 함수를 호출할 때 ()를 붙이지 않으면 함수를 호출하는게 아니라 그 함수가 정의된 객체를 참조하는 게 된다.
함수 선언식
function getExample(one, two){} // 어디서든 호출이 가능하다.
함수 표현식
const getExample = function(one,two){} // 함수를 생성(초기화)한 코드 아래에서만 호출이 가능하다.
화살표 함수
const getExample = (one, two) => {one / 2} // 함수를 생성(초기화)한 코드 아래에서만 호출이 가능하다. const getExampl2 = one => one / 2 //매개변수가 하나, 함수 내부가 하나의 문으로 구성될 경우 괄호, 중괄호 생략이 가능하다.
let, const // 변수 선언 function // 함수 선언 let function, const function // 함수 표현식 => // 화살표 함수
함수의 리턴
function getExample(one, two){ three = one + two return three } // 함수를 호출했을 때 출력할 값을 리턴해준다
코드스테이츠, TCPschool, https://ko.javascript.info/function-basics