weeklypaper8 브라우저의 동작 원리 웹브라우저 동작 원리는 사용자가 선택한 자원(Resource)을 서버에 요청(Request)하고 서버로 부터 받은 응답(Response)을 브라우저에 렌더링한다. 1. 브라우저의 구조 사용자 인터페이스 - 브라우저에서 볼 수 있는 거의 모든 것, 요청한 페이지를 보여주는 창외의 모든 ui를 의미한다. - 주소창, 뒤로가기, 앞으로 가기, 새로고침, 북마크, 환경설정 같은 ui가 있다. 브라우저 엔진 - 사용자 인터페이스와 렌더링 엔진 사이에서 중개자 역할을 한다. - 인터페이스 레이어에 있는 버튼을 눌렀을 때 브라우저 엔진은 그 명령을 수행한다. 렌더링 엔진 - HTML, CSS, JacaScript를 파싱하고 그 결과물을 페이지에 그려내는 역할을 한다. 통신 - HTTP 요청과 같은 네트워크 호출에 사.. 2023. 12. 16. var, let, const 를 중복 선언 허용, 스코프, 호이스팅 관점에서 서로 비교 1. 중복선언 허용 관점 var는 중복 선언이 가능해서 많은 코드들을 var로 사용하면 위에서 사용하던 변수들은 사라진다. let 과 const는 중복선언이 불가 / (SyntaxError 발생) 2. 스코프 관점 -스코프는 참조 대상 식별자(변수, 함수의 이름과 같이 어떤 대상을 다른 대상과 구분하여 식별할 수 있는 유일한 이름)을 찾아내기 위한 규칙이다. var키워드는 변수의 스코프가 함수단위로 구분 (함수 스코프) 함수를 기준으로 스코프를 구분하기 때문에 함수 안에서 선언한변수는 함수 안에서만 유효하다 함수를 제외한 조건문이나 반복문에서 새로운 변수를 만들어도 모두 전역변수로 평가된다 (전역 스코프) -> 고유하게 사용할 수 있는 지역변수가 없다는 단점이 있다. let 과 const 는 중괄호가 사.. 2023. 12. 16. 얕은 복사(Shallow Copy)와 깊은 복사(Deep Copy) 자바스크립트에서 얕은 복사와 깊은 복사는 객체나 배열을 복제하는 두 가지 다른 방법을 나타냅니다. 데이터 구조의 중첩 정도에 따라 어떻게 동작하는지가 다릅니다. 1. 얕은 복사(Shallow Copy) 객체를 복사할 때 기존 값과 복사된 값이 같은 참조를 가리키고 있는 것을 말합니다. 객체안에 객체가 있을 경우 한 개의 객체라도 기존 변수의 객체를 참조하고 있따면 이를 얕은 복사라고 합니다. 즉 내부 객체나 배열은 동일한 메모리 위치를 참조하게 됩니다. 얕은 복사의 방법 중 몇가지 ○ spread 연산자 ○ Object.assign 메서드 ○ Array.from 메서드 ○ slice 메서드 ○ concat 메서드 ○ Map 생성 2. 깊은 복사(Deep Copy) 객체 안에 객체가 있을 경우에도 원본과의.. 2023. 12. 12. js 비교연산자 '==' 와 '===' 차이점은? 자바스크립트에서 '==' 와 '===' 는 비교연산자로 사용되며 주요 차이점은 값과 데이터 타입을 비교하는 방식입니다. 1. ' === ' 일치연산자 라고 하며 값과 데이터 타입이 모두 동일한지 비교합니다. 엄격한 비교를 원할 때 사용합니다. 2.' == ' 동등연산자 라고 하며 값이 동일하지만 데이터타입은 비교하지 않습니다. 느슨한 비교를 수행하여 값이 동일한지만을 판단해 필요에따라 자동으로 타입 변환이 이루어집니다. 타입을 명시적으로 처리해야될 경우에만 사용합니다. 2 === 2 // true, 숫자와 숫자가 일치 2 === "2" // false, 숫자열과 문자열이라 데이터 타입이 다르다 2 == 2 // true, 숫자와 숫자가 일치 2 == "2" // true, 문자열 '2'가 숫자 2로 변환.. 2023. 12. 12. git flow에 대해서 1. Git 브랜치 전략이란 Git 브랜치 전략은 프로젝트의 Git 브랜치를 효과적으로 관리하기 위한 워크플로우이다 각 Branch에 규칙을 정해놓고, 해당 규칙을 팀원들이 지켜가며 개발을 진행하는 것이다. 2. Git 브랜치 전략이 필요한 이유 -팀원들간의 공통 브랜치 용어를 정하여 공통 이해를 달성하고 효율적으로 관리할 수 있기 때문이다. 3. git flow 구성 Main 브랜치 Develop 브랜치 Supporting 브랜치 - Feature 브랜치 - Release 브랜치 - Hotfix 브랜치 1. Main 브랜치 - 출시 가능한 프로덕션 코드를 모아두는 브랜치이다. 프로젝트 시작 시 생성되며 개발 프로세스 전반에 걸쳐 유지된다, -배포된 각 버전을 tag를 이용해 표시해둔다 2.Develop.. 2023. 12. 12. 이전 1 2 다음