js 2

Js:변수 및 호이스팅

(1)호이스팅 => 함수가 실행되기 전 함수 안에 필요 변수값들을 모두 모아 유효범위 최상단에 선언 -> 자바스크립트 parser가 함수 실행 전 함수를 한번 훑음 -> 함수안에 존재하는 변수 / 함수선언에 대한 정보를 기억하고 실행시킴 -> 유효범위 : 함수 블록 {} *실제로 코드가 변화되는건 아니고 parser 내부적으로 끌어올려서 처리 -> 메모리상 변화는 없음 * var 변수 선언과 함수선언문에 대해서만 호이스팅이 일어남 let/const 변수 선언과 함수표현식에서는 호이스팅이 일어나지 않음 EX) 함수선언문 / 함수표현식 -함수선언문- function abc() { console.log("hellomello"); } -함수표현식- var abc = function() { console.log(..

가벼운 Js VS Ts

Js vs Ts -안정성- -> 타입 안정성 : 자바스크립트에서는 타입을 자동으로 지정해주는 대신 그만큼 타입에 대한 안정성이 떨어짐 --> 자바와 타 언어들과 동일하게 타입을 지정을 하여 개발 진행 / 그만큼 자바스크립트가 유연하나 말도안되는 코드가 실행됨 ex)Js : [1, 2, 3, 4] + false => '1, 2, 3, 4false' ==> 첫째로 배열이 사라지고 String 바뀜 ==>둘째로 false라는 boolean 값이 String 으로 바뀜 ex2) function divide(a, b) { return a / b } divide("wow"); ==> NaN ===> 에러가 발생하지않고 실행됨 / 에러에 대한 보호가 이뤄지지 않아 위험성이 높음 ex3) const name = { n..