본문 바로가기

javascript29

일급객체(First Class Object) , 일급함수(First Class Function) 란? 일급 객체 (일급 함수) 란? 프로그래밍 언어에서 함수를 값으로 다룰 수 있는 특성을 가진 함수를 말한다. 이는 함수를 변수에 할당하거나, 다른 함수의 인자로 전달하거나, 함수의 반환 값으로 사용 할 수 있는것을 의미한다. 일급함수를 가진 언어에서는 함수가 일반적인 데이터 타입처럼 취급 된다. 이는 함수를 생성하고 조작하고 전달하는 데, 좀 더 자유롭고 유연한 프로그래밍 스타일을 가능하게 한다. 1. 변수에 함수 할당 함수를 값으로 취급하여 변수에 할당 할 수 있다. const add = function (a, b) { return a + b; }; 2. 함수를 인자로 전달 함수를 다른 함수의 인자로 전달할 수 있다. function calculate(operation, a, b) { return ope.. 2023. 7. 4.
[Swiper] 스와이퍼 이벤트 리스트 정리 이벤트 이름 설명 init 슬라이드 쇼가 초기화될 때 발생합니다. slideChange 슬라이드가 변경될 때 발생합니다. slideChangeTransitionStart 슬라이드 변경 트랜지션 시작시 발생합니다. slideChangeTransitionEnd 슬라이드 변경 트랜지션 끝날 때 발생합니다. slideNextTransitionStart 다음 슬라이드로 이동할 때 발생합니다. slideNextTransitionEnd 다음 슬라이드로 이동한 후 트랜지션 끝날 때 발생합니다. slidePrevTransitionStart 이전 슬라이드로 이동할 때 발생합니다. slidePrevTransitionEnd 이전 슬라이드로 이동한 후 트랜지션 끝날 때 발생합니다. slideChangeTransitionStar.. 2023. 5. 10.
[JavaScript] Array.prototype.reduce() | 리듀서 함수 Array.prototype.reduce() 배열의 요소들을 하나의 결과 값을 반환합니다. let arr =[ 1, 2, 3, 4 ]; console.log( arr.reduce((a,b) => a + b) ); // 10 console.log( arr.reduce((a,b) => a - b) ); // -8 리듀서 함수는 4개의 인자를 가진다. 누산기 (acc) accumulator → 콜백의 반환 값을 누적한다. 콜백의 이전 반환 값은 initialValue 이다. 현재 값 (cur) currentValue → 처리해야 할 요소 값. 현재 인덱스 (idx) → 처리해야 할 현재 요소의 인덱스. initialValue 를 제공한 경우 0, 아니면 1이다. 원본 배열 (src) array → reduce.. 2022. 12. 2.
[JavaScript] 서버사이드 렌더링 개념정리 서버사이드 렌더링 개념정리 출처 [ https://www.youtube.com/watch?v=iZ9csAfU5Os ] Sites history Static Sites ( 1990s ) 서버에 html 문서를 저장하고, 도메인 주소로 접속 시 , 그 html 문서를 보여주는 형식. 문제점 페이지 내의 다른 링크를 클릭 하면 서버에서 다시 해당 페이지 html 문서를 받아와서 업데이트를 해 출력 해주기에 사이트가 클 수록 사용성이 떨어진다. iframe ( 1996 ) 문서 내에서 또 다른 문서를 문서를 담을 수 있는 iframe 태그가 도입이 되었다. 부분적으로 문서를 받아와서 업데이트를 할 수 있게 되었다. XMLHttpRequest ( 1998 ~ ) fetchAPI의 원조이다. HTML 문서 전체가 .. 2022. 11. 28.
[JavaScript] Array(배열) JS 함수 정리(2) 배열(Array) 이란? 배열은 연관된 데이터를 모아서 관리하기 위해서 사용되는 데이터 타입. 변수가 하나의 데이터를 저장하기 위한 것이라면 배열은 여러 개의 데이터를 저장하기 위한 것이라고 할 수 있다. 배열은 순서가 있는 값들을 의미 한다. 배열의 값은 요소(element) 이다. 배열의 순서는 인덱스(index) 이다. 배열의 순서는 0부터 시작한다. 배열의 정의는 대괄호 [] 로 한다. 배열 안에 요소는 쉼표로 구분한다. 배열에 접근하는 방법 배열을 조회 하려면 index 를 이용한다. // 두번째 인덱스 번호 값을 가지고 온다. let array = [1,2,3,4,5]; console.log(array[2]) // 3 // 세번째 인덱스 번호 값을 변경 array[3] = 200 console.. 2022. 11. 28.
[JavaScript] 문자열 함수 실행 eval() , new Function() eval() eval()은 문자로 표현된 JavaScript 코드를 실행하는 함수이다. MDN 사이트를 확인해보면 해당 문제로 사용을 권장하지 않는다. 절대 사용하지 말라는 문구까지 사용 할 정도이다. 그럼 eval()의 대체를 알아보자 new Function() 새 함수 객체를 만든다. 이 생성자를 직접 호출하여 동적으로 함수를 생성할 수도 있으나, 보안 문제 및 eval과 유사한(그러나 훨씬 덜 심각한) 성능 문제가 발생할 수 있다. 하지만 eval과 달리, Function 생성자는 전역 범위로 한정된 함수만 생성하기에 대체로 사용한다. const icon1 = 'hi1' const icon2 = 'hi2' const icon3 = 'hi3' const icon4 = 'hi4' for(let i = .. 2022. 11. 27.
[JavaScript] ID , Class 제어 Element.id Element.className Element.id 요소의 식별자를 나타내며, HTML의 전역적인 id 속성을 반영한다. Element.ClassName 특정 엘리먼트의 클래스 속성의 값을 가져오거나 설정할 수 있다. 사용 방법 Element.id = '아이디명' Element.className = '클래스명' 2022. 11. 27.
[JavaScript] 클래스 제어 classList() classList() 엘리먼트의 클래스 속성의 컬렉션인 활성 DOMTokenList를 반환하는 읽기 전용 프로퍼티이다. classList 사용은 공백으로 구분된 문자열인 element.className을 통해 엘리먼트의 클래스 목록에 접근하는 방식을 대체하는 간편한 방법이다. 01. Element.classList.add() 클래스 추가 Element.classList.add('클래스명') // 클래스 하나 추가 Element.classList.add('클래스명a', '클래스명b', '클래스명c',) // 클래스 여러개 추가 02. Element.classList.remove() 클래스 제거 Element.classList.remove('클래스명') //제거 03. Element.classList.rep.. 2022. 11. 27.
[JavaScript] JSON(4) 참조복사 01. 참조복사 배열 , JSON 객체 끼리의 복사는 참조 처리 된다. 01-1. 일반 변수 끼리 복사하는 경우 원본이 변경 되어도 복사본에는 영향을 주지 않는 것을 알 수 있다. let a = 100; let b = a; console.log("a = " + a + ", b = " + b); // a = 100, b = 100 출력 a++; console.log("a = "+a+",b = " + b); //a = 101, b = 100 출력 01-2. 참조복사 (=앝은복사) 배열이나 JSON 원본을 수정하면 복사본도 함께 수정 된다. (반대의 경우도 마찬가지) const user = { name : "Lee" }; const member = user; console.log(user , member); .. 2022. 11. 27.
728x90