티스토리 뷰
IT tech Coding/javascript
data.push(...sectionData); 자바스크립트 ... 이게 뭐지?
Coding Life 2023. 5. 8. 17:37반응형
언제 나왔을까요?
이런걸 누가 생각해 냈을때 사실 많이 놀랐습니다.
... 우리가 흔히 말줄임표라고 하지 않았던가?
JavaScript의 data.push(...sectionData); 문장에서 ... 연산자는 Spread 연산자입니다. Spread 연산자는 이터러블(iterable) 객체를 개별 요소로 확장하는 데 사용됩니다.
이 예제에서는 sectionData 배열의 모든 요소를 개별적으로 data 배열에 추가하는 것을 의미합니다. 이렇게 함으로써 sectionData 배열의 요소들이 data 배열에 바로 연결되어 하나의 배열로 합쳐집니다.
간단한 예제로 설명하겠습니다.
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
arr1.push(...arr2);
console.log(arr1); // 결과: [1, 2, 3, 4, 5, 6]
위의 예제에서 arr1.push(...arr2); 문장을 사용하여 arr2 배열의 요소들을 arr1 배열에 추가했습니다. 결과적으로 arr1 배열은 [1, 2, 3, 4, 5, 6]로 확장되었습니다. 이와 같은 방식으로 data.push(...sectionData); 문장도 작동합니다.
// 정렬 함수 정의 (work_order 기준 오름차순)
function compareFunction(a, b) {
return a["col2"] - b["col2"];
}
// 구간별 데이터 정렬
sectionData.sort(compareFunction);
// 정렬된 구간 데이터를 전체 데이터 배열에 추가
data.push(...sectionData);
위의 코드의 의미는?
위의 코드는 다음과 같은 작업을 수행합니다:
compareFunction 함수를 정의합니다. 이 함수는 두 객체를 매개변수로 받아서 col2 프로퍼티 값을 기준으로 오름차순 정렬을 수행합니다.sectionData 배열에 저장된 데이터를 compareFunction을 사용하여 정렬합니다.정렬된 sectionData 배열의 데이터를 전체 데이터 배열인 data에 추가합니다.
자세한 설명을 드리겠습니다:
compareFunction(a, b) 함수는 두 객체를 입력으로 받습니다. 이 함수의 목적은 두 객체의 col2 프로퍼티 값에 따라 어떤 객체가 먼저 와야 하는지 결정하는 것입니다. 함수 내에서 a["col2"] - b["col2"]를 반환하고 있습니다. 이렇게 되면 col2 값이 작은 객체가 먼저 정렬되어 오름차순 정렬이 이루어집니다. 만약 col2 값이 같다면, 두 객체의 순서는 변경되지 않을 수 있습니다.sectionData.sort(compareFunction)에서는 compareFunction을 사용하여 sectionData 배열을 정렬합니다. 이 과정에서 각 배열 요소가 compareFunction에 전달되어 col2 값을 기준으로 오름차순 정렬이 이루어집니다.data.push(...sectionData)에서는 정렬된 sectionData 배열의 요소들을 전체 데이터 배열인 data에 추가합니다. Spread 연산자(...)를 사용하여 sectionData 배열의 모든 요소를 개별적으로 data 배열에 추가하고 있습니다.
결과적으로, 위의 코드는 각 구간별 데이터를 work_order(col2)를 기준으로 오름차순 정렬하고 정렬된 데이터를 전체 데이터 배열에 추가하는 작업을 수행합니다.
참고하셔서 좋은 프로그램 작성하세요~
반응형
'IT tech Coding > javascript' 카테고리의 다른 글
[웹개발] 멀티파일 저장하는 함수들 나름 정리 (0) | 2023.05.21 |
---|---|
html의 canvas의 크기는 얼마까지 가능할까? (0) | 2023.05.20 |
[자바스크립트] 한글 입력 감지 (초성, 중성, 종성 포함) - 화면 출력 코드 (4) | 2023.04.30 |
자바스크립트 여러 복잡한 조건을 적용한 체크박스 마음대로 다뤄보기 (0) | 2023.04.21 |
자바스크립트 오류 : 'Uncaught TypeError: Cannot read properties of undefined' (0) | 2023.04.20 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 프로그래머생활
- sql문장 날짜계산
- 뫄프로그래밍
- 스크립트작성기초
- 티스토리챌린지
- 도면자동생성
- json파일형태보기
- 테크에능한여성
- 효율적코딩방법
- #InstallForge
- 구글드라이브API
- 오블완
- 1. #웹개발 2. #로트번호 3. #성적서보기 4. #ajax 5. #jquery 6. #php 7. #프론트엔드 8. #백엔드 9. #부트스트랩 10. #웹기능구현
- 캐드자동작도
- General error: 2031
- coalesce는 한국어로 "코얼레스크" 또는 "코얼리스"
- #파이썬패키징
- json파일편하게보는법
- 파이썬코드줄바꿈방법
- ajax오류메시지
- chatGPT3.5파이썬버전
- 엑셀셀보호
- 오토핫키가이드
- isset을 적용해야 하는 이유
- 엑셀보호
- 코딩효율성
- Bootstrap 5
- 엑셀입력보호
- #프로그램설치
- 코딩튜토리얼
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함