const, let, var
자바스크립트는 기본적으로 타입이라는 것이 설정 되어져 있음
const → 상수 값으로 변수 생성 시에 같이 사용하는 생성어?
const → constant, 상수 값이므로 값이 바뀔 경우가 생김
const와는 다르게 let이라는 것도 있는데 let의 경우에는 생성할 때만 사용하여주면 됨
let은 마치 c언어에서 int, str 파이썬에서 list 등 처럼 생성자로 사용하여 주는 것.
변수 선언에는 기본적으로 const를 사용하고, 재할당이 필요한 경우에 한정해 let 을 사용하는 것이 좋다.
그리고 객체를 재할당하는 경우는 생각보다 흔하지 않다. const 를 사용하면 의도치 않은 재할당을 방지해 주기 때문에 보다 안전하다.
- 재할당이 필요한 경우에 한정해 let 을 사용한다. 이때, 변수의 스코프는 최대한 좁게 만든다.
- 재할당이 필요 없는 상수와 객체에는 const 를 사용한다.
[참고 사이트]
(https://velog.io/@bathingape/JavaScript-var-let-const-차이점)
var의 경우에는 기본적으로 생성과 초기화가 동일해서 var 전에 해당 변수를 불러와도 불러와진다. 그렇게 사용할 경우 let과는 다르게 내가 생성을 했는지 재할당을 하는지 등에 대해서 안알려주기 때문에 사용하기가 어렵기 때문에 사용을 안하는 것이 좋다.
boolean
true or false로 이뤄진 변수
true, false, null 전부 있는 그대로 작성해서 사용하여 주면됨.
null은 문자 그대로 아무것도 없는 상태로 만들어준닥 생각하면 된다
const amIFat = null;
let something;
console.log(something)
undefined는 이것과는 다르게 위의 코드에서 세번째 줄 처럼 선언을 해줘서 공간을 만들어 줬지만 안에 값을 안 채워넣어준 경우 이다.
array
const num = [1,2,3,4,5,6,7,8]
console.log(num[3])
num.push(9)
array를 형성 해줄 때는 [], 대괄호로 둘러쌓아 줘서 만들어주기
array 안의 각 항목들은 쉼표로 분리해줘야 함
Object
//const name = "hyunwoo";
//const points = 121212;
//const handsome = false;
//const fat = "little bit";
//위의 값들을 하나의 데이터 형식으로 만들어주려면
const player = {
name : "hyunwoo",
points : 10,
fat : true,
handsome : false,
}
console.log(player);
console.log(player.name)
console.log(player["name"])
player.fat = false
console.log(player.fat)
object의 값을 불러줄 때는 xxx.xx를 해줘도 되고 xxx.[”xx”]를 해줘도 된다는 점
function
function sayHello(nameOfPerson, age){
console.log("hello!"+nameOfPerson);
}
sayHello("nico");
다른 언어에서 사용하는 거랑 동일하게 만들어 주면 됨
object에 이어서 사용을 하고 싶다면
const player = {
name : "hyunwoo",
points : 10,
fat : true,
handsome : false,
sayHello : function(){
console.log("hello!")
}
}
console.log(player);
console.log(player.name);
console.log(player["name"]);
player.fat = false;
console.log(player.fat);
이런식으로 object 안에 function property를 만들어서 같이 넣어주면 된다.
Recap
let과 const의 차이는 let은 업데이트를 할 수 있다는 것.
let을 이용해서 변수를 선언해주는 것과 업데이트를 해주는 것은 매우 큰 차이가 있다는 점
대부분의 변수를 const를 사용해주고 필요하면 가끔 let을 사용해주는 것이 원칙임.
undefined는 파이썬이나 다른 언어에는 없는 개념?
const cal = {
add : function(a,b){
console.log(a+b);
},
min : function(a,b){
console.log(a-b);
},
mul : function(a,b){
console.log(a*b);
},
div : function(a,b){
console.log(a/b);
},
}
cal.add(3,4);
cal.min(3,4);
cal.mul(3,4);
cal.div(3,4);
Return
const age = 96;
function cal(ageOfNew){
return ageOfNew + 2;
}
const krAge = cal(96);
alert(krAge);
→console에 krAge를 쳤을 때 변수를 찾아서 확인 할 수 있도록 출력 해줌
Conditionals
const age = prompt("How old are you?");
// prompt를 사용했을 때 alert 창 처럼 뜨지만 해당 창은 브라우저에 따라서 모양이 예쁘지 않고 관련된 css를 건드리지 못한 경우가 많음. 그렇기 때문에 이걸 사용하는 것 보다는 직접 만들어서 사용하는 경우가 더욱 많다고 볼 수 있음
// test 용으로는 충분히 사용할만 함
console.log(typeof age);
//typeof는 파이썬에서 타입을 확인 하는 방식과 동일하게 typeof(age)로 작성해도 사용가능함. 일반적으로 typeof xxx로 작성해서 사용함
//위의 경우에 숫자를 넣게 되면 우리가 생각 했을 때는 숫자 15로 들어갈 거 같지만 안에 들어가 있는 변수는 실제로는 string "15"임
//그래서 타입을 변경해주려면 parseInt("15");
console.log(parseInt(age), typeof parseInt(age))
//파이썬에서 int(input())이라고 받는 거 처럼 여기서도
const age2 = parseInt(prompt())
//로 받는게 더 편하게 나올 수도 있음
console.log(typeof age2)
조건 문을 사용하려면 아래와 같이 작성하여 주면 된다.
const age= parseInt(prompt("How old are you?"))
console.log(isNaN(age));
if(isNaN(age)){
console.log("It is Nan");
}else{
console.log("It is Number");
}
//isNaN -> it is not a number
if(조건문){}else{} 식으로 사용하여 주면 된다.
//상황에 따라서 조건이 세 개 이상일 때도 있는데 해당상황에서는
if(condition){
}else if(condition){
}else{
}
로 작성해서 사용하여 주면 된다.
const age = 42;
if (isNaN(99)){
console.log("plese write a number");
} else if (age >= 18 && age < 50){
console.log("You are too young");
} else {
console.log("You can drink")
}
그리고 and랑 or의 경우에는 JS에서는 || 와 &&로 작성해서 사용하여 주면 된다.
'DEV' 카테고리의 다른 글
[GDSC] konkuk kprint; (건국대 컨퍼런스를 다녀오며) [1편] (0) | 2024.05.17 |
---|---|
자바스크립트 처음부터 다시보기 EP.2 (0) | 2022.10.17 |
자바스크립트 처음부터 다시보기 EP.1 (0) | 2022.10.12 |