본문 바로가기
반응형

Javascript/배경 & 실무 지식20

[JavaScript] 자바스크립트 면접 질문 자바스크립트 관련하여 면접시 받을 수 있는 질문들입니다. Promise와 Callback 차이 자바스크립트에서 Promise와 Callback은 비동기 코드의 처리 방식을 다르게 다루는 개념입니다. 다음은 각각에 대한 설명입니다: 1. Callback: Callback은 비동기 작업이 완료되었을 때 실행되는 함수를 의미합니다. 일반적으로 비동기 함수의 매개변수로 콜백 함수를 전달하여 사용합니다. 비동기 작업이 완료되면 해당 콜백 함수가 호출되어 결과를 처리하거나 다음 동작을 수행할 수 있습니다. Callback은 비동기 작업의 순서와 결과 처리를 보장하기 위해 사용됩니다. 하지만 콜백 함수를 중첩하여 사용하면 코드가 복잡해지고 가독성이 떨어질 수 있으며, 에러 처리와 예외 처리가 어려울 수 있습니다. 2.. 2024. 4. 12.
[JavaScript] Filter() Filter() - 자바스크립트의 filter() 함수는 배열에서 특정한 조건을 만족하는 요소들로 이루어진 새로운 배열을 생성하는 메서드입니다. filter() 함수는 배열의 각 요소에 대해 주어진 콜백 함수를 실행하고, 콜백 함수의 반환값이 true인 요소들로 새로운 배열을 구성합니다. Filter() 함수의 기본구문 const newArray = array.filter(callback(element[, index[, array]])[, thisArg]); array: 필터링을 수행할 배열입니다. callback: 각 요소를 평가하는 함수로, 아래의 매개변수를 가집니다. element: 배열 내 현재 처리 중인 요소. index (선택사항): 배열 내 현재 처리 중인 요소의 인덱스. array (선택사.. 2024. 2. 22.
[JavaScript] Truthy와 Falsy 자바스크립트에서 "truthy"와 "falsy"는 조건문이나 논리 연산에서 값의 참과 거짓을 평가하는데 사용되는 개념입니다. 이 용어들은 값의 타입에 관계없이 평가되며, 일부 값들은 "truthy"로 평가되고, 일부 값들은 "falsy"로 평가됩니다. 다음은 "truthy"와 "falsy"의 예시와 평가 규칙에 대한 설명입니다: 1. "Truthy" 값: true: 불리언 값 true는 항상 "truthy"로 평가됩니다. 비어있지 않은 문자열: 비어있지 않은 모든 문자열은 "truthy"로 평가됩니다. 숫자: 0이 아닌 모든 숫자는 "truthy"로 평가됩니다. 배열과 객체: 비어있지 않은 배열이나 객체는 "truthy"로 평가됩니다. 함수: 정의된 함수는 항상 "truthy"로 평가됩니다. 2. "Fa.. 2024. 2. 19.
JavaScript Animation과 CSS Animation 차이 CSS 애니메이션과 JavaScript 애니메이션은 웹 페이지에서 동적인 요소를 만들기 위해 사용되지만 다른 접근방식을 보입니다. 1. CSS 애니메이션 CSS 애니메이션은 CSS 속성을 사용하여 웹 요소에 애니메이션 효과를 적용하는 방식 주로 @keyframes 규칙을 사용하여 애니메이션의 시작 상태와 종료 상태, 그리고 중간 단계의 스타일을 정의 CSS 애니메이션은 주로 시각적인 요소에 대한 애니메이션에 사용됩니다. 예를 들어, 요소의 이동, 회전, 크기 변화, 색상 변화 등을 담당 CSS 애니메이션은 브라우저에 내장된 애니메이션 엔진을 사용하므로, 성능 면에서 일반적으로 JavaScript 애니메이션보다 부드럽고 효율적 CSS 애니메이션은 간단한 애니메이션 효과를 적용하기에 편리하며, 코드가 간결하.. 2024. 2. 16.
[JavaScript] 프로미스(Promise) * 프로미스(Promise)란? 자바스크립트에서 프로미스(Promise)는 비동기 작업의 결과를 나타내는 객체입니다. 비동기 작업은 일반적으로 서버에서 데이터를 가져오거나 파일을 읽는 등 시간이 걸리는 작업을 말합니다. 프로미스는 이러한 비동기 작업의 성공 또는 실패와 그 결과 값을 처리하기 위해 사용됩니다. 프로미스는 세 가지 상태를 갖습니다: 대기(pending): 비동기 작업이 아직 완료되지 않은 상태입니다. 이행(fulfilled): 비동기 작업이 성공적으로 완료되어 결과 값을 반환한 상태입니다. 거부(rejected): 비동기 작업이 실패한 상태입니다. 기본 예시 const myPromise = new Promise((resolve, reject) => { // 비동기 작업 수행 // 작업이 성.. 2024. 2. 7.
[JavaScript] 호이스팅(Hoisting) 1. 호이스팅(Hoisting) 호이스팅(Hoisting)은 자바스크립트에서 변수 선언과 함수 선언이 해당 스코프의 맨 위로 "끌어올려지는" 동작을 말합니다. 이는 코드 실행 전에 변수와 함수가 메모리에 할당되는 것처럼 동작하여, 변수와 함수를 선언하기 전에도 사용할 수 있는 특징을 갖고 있습니다. 1-1. 변수 호이스팅 변수 선언은 실제 코드의 위치와 상관없이 해당 스코프의 맨 위로 끌어올려집니다. 즉, 변수를 선언하기 전에도 변수를 사용할 수 있습니다. 그러나 변수의 초기화는 원래 코드의 위치에 따라 이루어지므로, 선언 전에 변수에 접근하면 undefined가 할당됩니다. 1-2. 함수 호이스팅 함수 선언도 변수 선언과 마찬가지로 해당 스코프의 맨 위로 끌어올려집니다. 함수 선언문은 변수에 할당된 함.. 2024. 2. 7.
반응형