값 10 + 20; // 10 + 20 은 평가되어 숫자 값 30을 생성 식(표현식)이 평가되어 생성된 결과 모든 값은 데이터 타입을 가지며 메모리에 2진수 비트의 나열로 저장됨 변수에 할당되는 것은 값 리터럴 //1. 리터럴 표현식 10 'hello' //2. 식별자 표현식(선언이 이미 존재한다고 가정) sum arr[1] //3. 연산자 표현식 10 + 20 sum = 10 //4. 함수, 메서드 호출 표현식(선언이 이미 존재한다고 가정) sol() 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법 자바스크립트 엔진은 코드가 실행되는 런타임에 리터럴을 평가해 값을 생성 표현식 값으로 평가될 수 있는 문(리터럴, 식별자, 연산자, 함수 호출 등) 표현식이 평가되면 새로운 값을..
자바스크립트 엔진이 "10+20" 코드를 실행하기 위해서는 피연산자와 연산자의 의미를 알고 있어야 하며 파싱 할 수 있어야 한다. 메모리 데이터를 저장할 수 있는 메모리 셀의 집합체 즉,1바이트 단위로 데이터를 저장하거나 읽어 들임 메모리 주소를 통해 값에 직접 접근하는 것은 치명적 오류를 발생시킬 가능성이 매우 높음 => 만약 실수로 운영체제가 사용하는 값을 임의로 변경시키면 시스템을 아예 멈추게 하는 치명적인 오류 발생! 값이 저장될 메모리 주소는 코드가 실행될 때마다 매번 변경됨 메모리 셀 하나의 크기는 1바이트(8 bit) 고유의 메모리 주소를 가짐 프로그래밍 언어는 기억하고 싶은 값을 메모리에 저장하고, 저장된 값을 읽어 들여 재사용하기 위해 변수라는 메커니즘 제공 변수 하나의 값을 저장하기 위..
브라우저와 Node.js 차이 브라우저 : HTML, CSS, 자바스크립트를 실행해 웹 페이지를 브라우저 화면에 렌더링 하는 것, 클라이언트 사이드 Web API (ECMAScript, DOM, BOM, Canvas, XMLHttpRequest, fetch, requestAnimationFrame, SVG, Web Storage, Web Component, Web Worker 등)기본적으로 제공 Node.js : 브라우저 외부에서 자바스크립트 실행 환경을 제공하는 것, 파일 시스템 기본 제공, ECMAScript와 Node.js 고유의 API 지원 웹 크롤링 : 서버에서 웹사이트의 콘텐츠를 수집하기 위해 웹사이트에서 HTML 문서를 가져온 다음, 이를 가공해서 필요한 데이터만 추출하는 것 Node.js ..
크로스 브라우징 : 브라우저에 따라 웹페이지가 정상적으로 작동하지 않는 것 렌더링 : HTML, CSS, 자바스크립트로 작성된 문서를 해석해 브라우저에 시각적으로 출력하는 것 Ajax 자바스크립트를 이용해 서버와 브라우저가 비동기 방식으로 데이터 교환해 웹 페이지를 동적으로 갱신하는 프로그래밍 방식. 이로 인해 서버로부터 필요한 데이터만 전송받아 변경해야 하는부분만 한정적으로 받아 렌더링 할 수 있게 됨 전체 HTML 코드를 받아오는 불필요한 데이터 통신과 렌더링 과정이 사라짐. 또한, 전체 페이지를 받아와 전체적으로 화면이 전환되면서 깜빡거리는 현상을 어느정도 방지할 수 있게 됨 브라우저에서 제공하는 Web API인 XMLHttpRequest 객체를 기반으로 동작 비동기 방식으로 동작하기 때문에 서버에..
1. 꼭 써봐야 하는 10가지 리액트 커뮤니티 훅들 react-hook-form 라이브러리의 useForm : 간단한 코드로 입력값 검증하고 에러처리 가능 react-use 라이브러리의 useUpdateEffect : 특정 상태가 업데이트 될 때 함수 호출 가능 import { useUpdateEffect } from "react-use" const Home = () => { useUpdateEffect(() => { // 이 함수는 첫 렌더링에 실행되지 않습니다 console.log("Runs only if the state updates") }, [fName]) return ( ...) } react-use 라이브러리의 useCopyToClipboard : 상태(사용자가 클립보드에 복사하는 문자열 값..
1. 웹 개발 트렌드 용어 API : Application Program Interface의 줄임말로 컴퓨터와 애플리케이션이 서로 통신하는 방식 중단점(Breakpoint) : 사용자가 가장 보기 좋은 크기로 웹 사이트가 화면 크기에 맞게 조정되는 시점 캐시(Cache) : 웹 사이트를 처음 방문할 때 컴퓨터에 관련 정보를 저장하여 사이트 속도를 높이는 데 도움이 되는 임시 데이터 저장소, 캐시 덕분에 웹 사이트 재방문 시 모든 웹사이트 정보를 로드할 필요가 없음 CI/CD : 앱 개발 단계에 자동화를 도입해 고객에게 앱을 수시로 전달하는 방식, 지속적인 통합, 지속적인 전달, 지속적인 배포 쿠키(Cookies) : 인터넷 서버에서 브라우저로 보내는 데이터, 브라우저가 동일한 서버에 접속할 때마다서버에 ..