JS 전문가되기 제목의 포스팅의 목적은 필자가 공부한 것을 복습하는데 그리고 약점을 보완하는데 있습니다.
let A = 1; //선언과 할당 var B, C, D; // 선언
코딩에서의 변수 생성방법은 선언과 할당이다.
변수선언 과정에서는 규칙이 존재하는데,
바로 변수이름 앞에 식별자 키워드(ex.let, var)가 들어간다는 것이다.
이러한 식별자는 변수의 Scope를 지정해줍니다.
예를 들면,
let: 괄호변수
var: 함수단위
이는 나중에 더 자세하게 배울 예정입니다.
그럼 우리는 여기서 의문점이 생깁니다. 변수는 무엇일까?
변수는 데이터의 보관함입니다.
A는 변수이름(보관함 이름) 그리고 그 안에는 1이라는 값이 들어가 있는 것입니다.
let A = 1; let B = 3; console.log(A+B); //4
이렇게 변수는 변수이름을 통해 값을 불러와서 다양한 연산을 하는데 이용됩니다.
let A = 1; let B = '3'; console.log(A+B); //error
위와 똑같아 보이는데 왜 에러가 날까요?
그렇습니다 둘을 비교해보시면 이전코드와는 달리 ' ' 가 3에 씌워져 있는게 다르죠?
JS에서 ' ' 안에 있는 거의 모든것은 문자열입니다.
이게 무슨 말이냐면, 숫자+숫자가 아닌 숫자+문자이기 때문에 연산이 안되는 것입니다.
이렇듯 모든 변수에는 타입이 있습니다.
let number = 1; //Number Type 2, 3, 4, 5 let string = "남형진"; //String Type "강영권", "MacOS", "123" let boolean = true; //Boolean Type true, false let uf; //Undefined Type let ull = null; //Null Type
JS에서의 기본타입은 이렇게 나뉜다. (Symbol Type 예외)
1 + true, 1 + null이 안되듯이 1 + "3" 도 안되는 것이였습니다.
let Array = [1, 2, 3, 4, 5]; //배열 선언과 할당 let objectMe = {name: "남형진", age: 21, gender: man} //객체 선언과 할당
배열은 값들의 나열!, 객체는 key와 value!
배열은 여러가지 값을 한번에 가지며, 각 값에 순서가 존재합니다.
예를 들면 위 코드에서 1은 첫번째, 2는 두번째 이런 식으로 말이죠
그렇다면 배열의 값은 어떻게 불러올까요?
let Array = [1, 2, 3, 4, 5]; console.log(Array[1]); //2
배열이름[인덱스]로 불러옵니다 ( Array[1] )
인덱스는 자리의 번호입니다. 어?! 그런데 뭐가 이상하지 않나요??
위 코드에서 저희는 인덱스 자리에다가 1를 넣었습니다.
그런데 왜 2라는 결과값이 나오는 걸까요?
🚨 인덱스 번호는 0부터!
인덱스 번호는 첫번째 자리부터 0, 1, 2, 3, ... 한마디로 0부터 배정되기 때문에
배열내의 값을 참조하실 때 유의!
이어 객체로 넘어가겠습니다.
객체를 선언할 때는 { } 를 사용합니다.
그럼 할당과 참조는 어떻게 할 수 있을까요?
🤝 Key와 Value는 누구보다 친한 짝꿍!
객체는 key, value를 이용해서 할당합니다.
let objectMe = {name: '남형진', age: 21, gender: man}; // 참조 console.log(objectMe.name); // 남형진 console.log(objectMe.age); // 21 console.log(objectMe.gender); //man
이런식으로 객체 Property를 사용할 수 있다.
function addNum(input){ return input + 1; } //함수선언식, 1를 더하는 함수 // let subtractNum = function(input){ return input - 1; } //함수표현식, 1를 빼는 함수
함수를 선언하는 방식, 그리고 return
함수를 선언할 때는 function keyword를 이용하며
함수이름은 CamelCase(변수도 마찬가지) 형식으로 지어준다.
( ) 에는 parameter가 들어가며,
{ } 에는 body, 한마디로 함수가 호출되면 실행할 코드들이 들어간다.
return은 무엇일까?
function addNum(input){ return input + 1; }; function subtractNum(input){ input - 1; }; // console.log(addNum(2)); //3 console.log(subtract(2)); //undefined
return은 함수처리 후 결과값을 바깥으로 내보낸다.
함수처리 후 결과값을 사용해야 한다면 return을 사용하고,
단순히 함수처리만 필요한 것이면 return을 사용하지 않아도 된다.
최종수정 20201207