1. var (재선언 O, 재할당 O) var temp = "hello"; console.log(temp); // hello var temp = "bye"; console.log(temp); // bye var을 사용해서 같은 이름의 변수를 선언해서 각각 출력했을 때, 에러 없이 각각 다른 값이 출력되는 것을 확인 할 수 있다. 에러 없이 변수의 중복 선언과 값을 재할당해서 사용할 수 있지만, 코드량이 많거나 프로젝트에서 기존에 선언한 변수의 존재를 잊고 값을 재할당하는 등의 문제가 발생할 수 있다. 2. let (재선언 X, 재할당 O) let temp = "hello"; console.log(temp); // hello temp = "hi"; console.log(temp); // hi let tem..
typeof 피연사자의 자료형을 나타내는 문자열을 반환한다. 자료형 문자열 Undefined "undefined" Null "object" Boolean "boolean" Number "number" Bigint "bigint" String "string" Symbol "symbol" Function "function" 다른 모든 객체 "object" 문자를 숫자로 바꾸기 var num1 = "1"; num1 *= 1; alert(typeof num1); // "number" var num2 = "1"; num2 = Number(num2); alert(typeof num2); // "number" var num3 = "1"; num3 = parseInt(num3); // 정수로 형변환 alert(type..
먼저, 웹 브라우저 화면이 만들어지는 순서를 알아보자. (렌더링 순서) 1. Loading 서버로부터 전달받은 리소스 스트림을 로더가 읽는 과정이다. 2. Parsing HTML/XML 파서를 이용해서 DOM Tree(HTML의 태그), CSSOM Tree(CSS 파일)를 생성하는 과정이다. 3. Rendering Tree DOM Tree(HTML의 태그), CSSOM Tree(CSS 파일)를 이용해서 Render Tree를 생성한다. CSS가 display:none 으로 구성된 HTML 태그는 화면에서는 보이지않고 공간만 차지하기 때문에 렌더링 트리(Rendering Tree)를 생성하는 과정에서 제외된다. // 렌더링 제외됨 4. Layout & Painting Render Tree가 생성되면 Ren..
자바스크립트(javaScript)의 소수점 연산에서 오류가 발생했다. var a = 0.1; var b = 0.2; console.log(a + b); // 0.30000000000000004 0.3을 예상했지만 0.30000000000000004가 출력됬다. 원인 자바스크립트(javaScript)뿐만 아니라 Java, C, Python, Oracle .. 에서도 계산 오류가 발생한다. 우리가 보통 계산 할때 사용하는 10진법과 달리 컴퓨터는 2진법으로 동작하는데, 몇몇 소수는 10진법에서 2진법으로 변환하는 과정에서 무한 소수가 되어버린다. 저장공간에 한계가 있는 컴퓨터는 무한 소수를 유한 소수로 바꾸게 되는데, 이 과정에서 미세한 오차가 발생해서 오류가 발생한 것이다. (정밀도 문제) 미세한 값들이 ..