FrontEnd
-
JSX 기본 내용 정리FrontEnd/React 2023. 2. 7. 15:29
import {React, useState, useEffect} from 'react'; export default function AddCount() { const [count, setCount] = useState(0) useEffect(() => { alert("안녕하세요") }) return ( setCount(prev => prev + 1)}>`current Count : ${count}`) } import React from 'react'; export default function HelloWorld() { return ( hello World ) } 리액트 함수형 컴포넌트의 기본형이다. HelloWorld라는 컴포넌트인데 리액트 컴포넌트에서 주의사항은 첫글자는 무조건 대문자여야한다. 코드..
-
0.1+0.2 = 0.3이 아니다? - 부정확한 계산FrontEnd/JavaScript 2023. 1. 30. 13:35
자바스크립트를 포함한 다른 언어에서도 발생하는 현상이다. 10진수로 표현한 0.1과 0.2를 더하면 우리는 쉽게 0.3을 계산할 수 있지만 컴퓨터는 이진수로 숫자를 기억하기 떄문에 발생하는 오차이다. 이진수로 이루어진 숫자는 0과 1로 구성되어 0.1,0.2같은 분수는 이진법으로 표현하면 무한 소수가 됩니다. 1/3을 십진법으로 표현하면 0.3333...이 되는 것 처럼요. 10진법에서 1/3을 정확하게 나타낼 수 없듯이, 2진법을 사용해 0.1과 0.2를 정확하게 저장하는 방법은 없습니다. 이 문제를 어떻게 해결할까요? 가장 신뢰할만한 방법은 toFixed() 메서드를 사용해 어림수를 만들면 됩니다. toFixed()함수는 숫자를 전달받아 괄호 안에 인수만큼 소숫점자리수까지 계산한 뒤 반올림하여 문자열..
-
값이 확정되어있는 피연산자를 찾는 법 = nullish 병합 연산자 '??'FrontEnd/JavaScript 2023. 1. 24. 05:53
nullish병합 연산자란 뭘까? "nullish 병합 연산자(nullish coalescing operator) ??를 사용하면 짧은 문법으로 여러 피연산자 중 그 값이 ‘확정되어있는’ 변수를 찾을 수 있습니다. " 라고 설명하고 있다. 여기서 확정되어 있는이란 null이나 undefined가 아니라는 뜻이다. let firstName = null; let secondName = null; let nickName = "David"; console.log(firstName??secondName??nickName??"익명") 위 코드는 출력해보면 nickName인 "David"가 출력된다. 만약 nickName까지 undefined였다면 마지막에 있는 "익명"이 출력됐을 것이다. nullish연산자는 ||..
-
var Hoisting이 뭘까?!FrontEnd/JavaScript 2023. 1. 22. 02:00
우리는 변수를 선언할 때 const와 let을 주로 사용하지만 var라는 아이도 사용하는 사람이 있다. console.log(a); // Error const a = 10; console.log(b) // undefined & Not Error var b; 위에 보이는 것처럼 const로 선언한 a는 const a = 10이 나오기 전에 콘솔로 출력하려면 error가 발생한다. 그러나 var는 undefined가 출력된다. 이유는 JS엔진 실행 context에 있다. hoisiting이란 끌어 올리는 것을 사전적으로 의미하는데 이런 행동은 사실 var뿐만 아니라 function, const, let도 이뤄진다. 프로그램이 동작하면 실행 컨텍스트에서 변수 오브젝트에 선언된 변수들을 전부 담기 시작한다. 여..