안녕하세요, 벌써 자바스크립트 혼공을 한지 절반이 되었습니다. 정말 시간은 금방 가는 거 같습니다.
이번 주에도 의미있는 공부를 하였는데요, 하나씩 포스팅 하도록 하겠습니다.
기본미션 : 비파괴적 처리와 파괴적 처리이 의미와 장단점 설명
중요 포인트 : 원본이 변하는지 변하지 않는지 체크가 가장 중요
1> 비파괴적 처리 (non-destructive)
처리 후에 원본 내용이 변경되지 않는 처리
const a = '안녕'
const b = '하세요'
const c = a + b
c
"안녕하세요"
a
"안녕"
b
"하세요"
-> 변수 a,b는 아무런 변경이 없음
2> 파괴적 처리 (destructive)
처리 후에 원본 내용이 변경되는 처리
const array = ["사과", "배", "바나나"]
array.push("귤")
4
array
(4) ["사과", "배", "바나나", "귤"]
-> 배열 array가 기존 3개 인덱스에서 4개로 변경이 되었음
정리하면,
구분 | 장점 | 단점 |
파괴적 처리 | 메모리 절약 할 수 있음 | 원본이 사라짐 |
비파괴적 처리 | 원본 보존 가능 | 메모리 사용량이 상대적으로 많아짐 |
요즘 하드웨어의 발달로 비파괴적 처리 하는 것을 추천하는 있음
선택미션 : p.173 확인 문제 3번 풀고, 풀이 과정 설명
문3-1번) 비파괴적 처리
const strA = "사과, 배, 바나나, 귤"
undefined
strA.split(",")
(4) ["사과", "배", "바나나", "귤"]
strA
"사과, 배, 바나나, 귤"
문3-2번) 파괴적 처리
const arrayB = ["사과", "배", "바나나", "귤"]
undefined
arrayB.push("감")
5
arrayB
(5) ["사과","배","바나나","귤","감"]
문3-3번) 비파괴적 처리
const arrayC = [1,2,3,4,5]
undefined
arrayC.map((x) => x * x)
(5) [1,4,9,16,25]
arrayC
(5) [1,2,3,4,5]
문3-4번) 비파괴적 처리
const strD = " 여백이 포함된 메세지 "
undefined
strD.trim()
"여백이 포함된 메세지"
strD
" 여백이 포함된 메세지 "
이번 주는 개념 위주로 학습을 진행 하였습니다.
얼른 학습하여 혼자 코딩하는 그날 까지 최선을 다하겠습니다.
모두들 화이팅입니다.
혼공단 자바스크립트 6주차 미션 (0) | 2023.02.18 |
---|---|
혼공단 자바스크립트 5주차 일지 (0) | 2023.02.11 |
혼공단 자바스크립트 4주차 일지 (0) | 2023.02.04 |
혼공학습단 9기 - 혼공 JS 2주차 : 태어난 해 알아 맞추기 (0) | 2023.01.15 |
혼공학습단 9기 - 혼공 JS 1주차 : 자바스크립트 개요와 개발환경 설정 (0) | 2023.01.08 |