본문 바로가기

JavaScript

(23)
고차함수 고차함수콜백 함수콜백 함수란 다른 함수의 매개변수로 사용되는 함수를 말한다. 콜백 함수는 호출될 때 다른 함수에 의해 호출되는 함수로, 특정 작업을 수행하기 위해 전달된다. 또한, 다른 함수의 결과로 리턴될 수도 있다. 예를 들어, 배열의 각 요소에 대해 특정 작업을 수행하고 싶을 때 콜백 함수를 사용하여 원하는 작업을 정의할 수 있다.function processArray(arr, callback) { for (let i = 0; i  고차 함수고차 함수란 함수를 반환하거나 함수를 인수로 받을 수 있는 함수를 말한다. 고차 함수는 코드의 가독성을 높이고 재사용성을 증가시키는 데 유용하다.익명 함수 반환고차 함수는 익명 함수를 반환할 수 있다. 예를 들어, 두 숫자의 합을 계산하는 함수를 반환하는 ..
JS브라우저 DOM DOM(Document Object Model)이란?HTML 문서를 JavaScript로 조작할 수 있도록 계층적 구조로 표현한 객체 모델.브라우저는 HTML 문서를 로드하고, 이를 DOM 트리로 변환하여 JavaScript에서 조작할 수 있도록 제공.  id와 class의 역할id:DOM 요소에 고유 식별자를 부여.하나의 문서에서 유일해야 함.특정 요소를 빠르게 선택하거나, CSS/JavaScript에서 조작할 때 사용.class:DOM 요소에 공통 스타일 또는 공통 동작을 부여.여러 요소에 중복으로 사용할 수 있음.CSS와 JavaScript에서 그룹으로 선택하거나, 스타일을 적용하는 데 사용.  id와 class를 사용해 DOM 요소 조작HTML 코드:Hello, DOM!JavaScript 코드:/..
실습 자바에서 문자열 처리자바에서 문자열은 불변(immutable) 객체로, 한 번 생성된 문자열은 수정할 수 없다. 이로 인해 문자열을 상수 풀(String Pool)에 저장하여 메모리를 효율적으로 사용할 수 있다. 만약 두 개의 문자열이 동일한 값을 가지고 있으면, 자바는 같은 메모리 주소를 공유하게 된다. 예를 들어, "hello"라는 문자열이 여러 번 사용되면 그 값은 동일한 메모리 위치에 저장되므로, 동일한 주소를 참조하게 된다.String str1 = "hello";String str2 = "hello";System.out.println(str1 == str2); // true위 코드에서 str1과 str2는 동일한 값을 가지고 있지만, 자바는 이를 상수 풀에서 참조하기 때문에 주소 값이 동일하다...
ES6 1. 스프레드 문법 (Spread Syntax)1.1 함수 호출에서의 사용스프레드 문법(...)은 배열이나 객체의 요소를 하나씩 풀어서 전달할 때 사용된다.function sum(x, y, z) { return x + y + z;}const numbers = [1, 2, 3];console.log(sum(...numbers)); // 출력: 6...numbers: 배열의 요소를 하나씩 분리하여 함수의 인자로 전달.주의:sum(numbers); 위처럼 전달하면 numbers가 배열로 전달되며, 나머지 매개변수(y, z)는 undefined가 된다.결과적으로 NaN이 반환된다.1.2 배열 복사 및 합치기스프레드 문법은 배열을 복사하거나 합치기에도 유용하다.const arr1 = [1, 2, 3];con..
클로저 - 원래 스코프 내부에서는 외부로 접근 가능한거 아니야? 스코프스코프는 변수와 함수가 접근할 수 있는 유효 범위를 말한다.자바스크립트에는 전역 스코프, 함수 스코프, 블록 스코프가 있다.전역 스코프: 코드 어디서든 접근 가능한 범위.함수 스코프: 함수 내부에서만 접근 가능한 범위.블록 스코프: 블록({}) 내부에서만 접근 가능한 범위, let과 const로 선언된 변수에 적용.기본적으로 스코프 내부에서는 외부 스코프의 변수에 접근할 수 있다. 이것은 자바스크립트의 기본 스코프 규칙이다.let globalVar = "I am global";function outerFunction() { let outerVar = "I am outer"; function innerFunction() { let innerVar = "I am inner"; ..
객체 객체객체는 키-값 쌍의 집합으로, 여러 값을 하나의 단위로 묶을 수 있는 데이터 구조이다.객체의 키는 문자열이나 심볼일 수 있고, 값은 원시 값, 함수, 다른 객체 등 모든 자바스크립트 값이 될 수 있다.객체는 중괄호 {}를 사용하여 정의하며, 키-값 쌍은 콜론 :으로 구분하고, 각 쌍은 쉼표 ,로 구분한다.let person = { name: "Alice",age: 30,greet: function() { console.log(`Hello, my name is ${this.name}`);}};// 객체의 속성에 접근하기 console.log(person.name); // 출력: "Alice"console.log(person['age']); // 출력: 30// 메서드 호출..
클로저 클로저란?클로저는 함수와 그 함수가 선언된 어휘적 환경(스코프)의 조합이다.클로저는 함수가 외부 스코프의 변수에 접근할 수 있는 기능을 제공하며, 이는 함수가 정의된 환경을 기억하는 데 기반을 둔다. 클로저의 주요 특징외부 함수의 변수에 접근할 수 있는 내부 함수클로저는 외부 함수에서 선언된 변수를 기억하고, 외부 함수가 종료된 후에도 이를 유지한다.함수가 변수에 담길 수 있다JavaScript에서 함수는 1급 객체로 취급되며, 이는 함수를 변수에 담을 수 있고, 다른 함수의 반환값으로 전달하거나 호출할 수 있음을 의미한다.데이터 은닉과 캡슐화클로저는 외부 스코프의 변수를 감추는(setter) 데 활용할 수 있다. 이를 통해 외부에서 변수에 직접 접근하지 못하게 하여 안전한 데이터 관리가 가능하다. 클로..
스코프 문자열과 숫자의 참/거짓 평가자바스크립트에서 문자열은 빈 문자열을 제외하고 모두 true로 평가된다.숫자는 0을 제외하고 모두 true로 평가된다. 스코프스코프는 변수가 접근 가능한 코드의 범위를 의미한다.지역 변수는 스코프 안에서만 접근 가능하다.전역 변수는 어디서든 접근 가능하다.변수를 참조할 때, 자바스크립트는 가장 가까운 스코프부터 변수를 찾는다.let globalVar = "I'm a global variable";function exampleFunction() { let localVar = "I'm a local variable"; console.log(globalVar); // 출력: "I'm a global variable" console.log(localVar); // 출..