Javascript(27)
-
[Javascript] 구조 분해 할당
배열이나 객체에 저장된 여러 값들을 분해하여 각각 다른 변수에 할당하는 방법 배열 구조 분해 할당 let music = ["Lemon", "Bang!", "snowman"]; 구조 분해 할당을 안 할 때는 let Kenshi = music[0];let AJR = music[1];let Sia = music[2]; 처럼 하나하나 변수에 할당해줘야 함 배열 구조 분해 할당 할 때는let [변수1, 변수2, 변수3] = 배열이름; 위의 배열을 배열 구조 분할 할당 한다면let [ Kenshi, AJR , Sia ] = music ; 로 배열을 간단하게 각각 변수에 할당 가능 이때 배열의 값 개수보다 더 많이 변수를 증가시키면let [ Kenshi, AJR , Sia, Charlie ] = music..
2024.05.15 -
[Javascript] 단락 평가(Short-circuit Evaluation)
and나 or 같은 논리연산식에서 첫 번째 피연산자 값만으로도 답을 확정할 수 있으면 두 번째 값은 접근하지 않는 특징 function funcFalse() { console.log("False 함수 입니다"); return false; }function funcTrue() { console.log("True함수 입니다"); return true; } console.log(funcFalse() && funcTrue()); 라는 함수와 연산식이 존재할 때 결과값을 예상해 보면 False 함수입니다True함수입니다False 일 거 같지만 실제 결괏값은 False 함수입니다false Why? 단락 평가가 작동했기 때문에 and 연산식에서 첫 번째 피연산자 값이 false라 뒤에와 상관없이 연..
2024.05.14 -
[Javascript] Truthy 와Falsy
참이나 거짓을 의미하지 않는 값도, 조건문 내에서 참이나 거짓으로 평가하는 특징→ 참 같은 값, 거짓 같은 값 Falsy한 값 종류: undefined, null, 0, -0, NaN, "", 0n Truthy한 값 위의 7개 제외한 나머지 값스트링, 숫자, 배열, 함수, 객체 등등 이거 도대체 언제 사용해..? 예를 들면 프로그램을 짤 때 정보를 받아오는 객체를 만든다 function userName(user) { console.log(user.name); } let user; = { name: "mm_스터디" }; userName(user);실제 서비스 만들 때 user가 본인의 이름을 제대로 입력하지 않거나, 오류가 발생하여 name에 제대로 값이 저장되지 않는 경우가 ..
2024.05.13 -
[Javascript] 배열
동일한 형태의 여러 값을 순차적으로 담을 수 있는 자료형 배열 생성 배열에는 형식 제한 없이 값을 넣을 수 있고, 넣는 값의 개수 제한도 없음 let 배열이름 = new Array(); let 배열이름 = []; 둘 중에 하나 사용해서 생성 가능let arr1 = new Array(); let arr2 = []; 생성과 동시에 값을 넣으려면 [] 안에 값을 적어주면 됨 let arr3 = [1, 2, 3, true, "hello", null, undefined, () => {}, {}, []]; console.log(arr3); → 결과값: (10) [1, 2, 3, true, 'hello', null, undefined, ƒ, {…}, Array(0)] 배열 요소 접근 배열은 순서대로 값을 저..
2024.05.12 -
[Javascript] 객체
객체 원시타입이 아닌 객체타입의 자료형이며 여러 가지 값을 동시에 저장할 수 있는 자료형 객체를 이용하면 현실세계에 존재하는 어떤 사물이나 개념을 표현하기 용이 객체를 선언하는 방법은 두 가지 있음 1. Object 사용 let 변수명 = new Object(); 2. 객체 리터럴 → 훨씬 더 간단 let 변수명 = {}; 객체 프로퍼티(객체 속성) 객체 내부의 실제 정보를 담고 있는 역할key : value로 구성객체 프로퍼티는 key의 이름으로 불림, 개수 제한 없음value에 올 수 있는 값의 형 제한 없음key 값은 문자와 숫자만 가능, 띄어쓰기가 있는 경우 ""로 묶어주기 let 객체이름 = {key : value,key : value,key : value,} let me = { ..
2024.05.11 -
[Javascript] 스코프(범위)
변수나 함수에 접근하거나 호출할 수 있는 범위 전역스코프, 지역스코프로 구분전역 스코프 전체영역에서 접근 가능 let num = 10; 지역 스코프 특정 영역에서만 접근 가능(함수, 조건문, 반복문 등 내에서 선언) function aaa() { let bbb = 222; → 지역 스코프 console.log("a"); console.log(bbb);}funA();위의 식은 콘솔 확인하면 오류 없이 결괏값 볼 수 있음 그러나 function aaa() { console.log("a");}funA(); console.log(bbb); 이 경우에는 bbb가 지역 스코프라 오류 발생결괏값: Uncaught ReferenceError: bbb is not definedif문이나 for문같이 조건..
2024.05.10