1. 문제
주어진 fruits 배열에서 마지막 요소를 꺼내 newFruits에 넣어주세요.
❗️ length, push를 이용하여 문제풀기
let fruits = ["사과", "바나나", "파인애플"]
풀이과정
소요시간 (10분)
- push 쓰는 방법을 몰라서 처음에 방황했음.
-> 추가해줄변수명.push()
하면 됨!- 내가 한 방법은 아래와 같고, 파인애플이 newFruits에 잘 들어갔다.
let newFruits = push(fruits[2])
- 답안을 보니 length-1 을 사용하여 마지막 객체를 가져온 것을 확인했다.
newFruits.push(fruits[fruits.length-1])
- 굳이 length-1를 해야하는건지 찾아보니, 나처럼 정수로 객체를 가져와도 되긴 하지만, 길이는 달라질 수 있기 때문에 고정된 정수로 마지막 요소에 접근하면 안된다고 한다. 아래와 같이 배열의 길이(length)에서 1을 뺀 값이 항상 배열 마지막 요소의 Index가 되기 때문에
마지막 요소
에 접근할 때는length-1
해주기!!
도움 받은 포스팅
궁금한 점
2. 문제
학생들의 이름이 담긴 students 배열이 있습니다.
배열에서 2번 째 요소까지의 데이터들을 뽑아 새로운 배열을 만드세요.
❗️slice를 이용하여 문제풀기
let students = ["철수", "영희", "훈이", "짱구", "유리"]
풀이과정
소요시간(10분)
3. 문제
상수 number는 핸드폰 번호가 담긴 문자열입니다.
해당 문자열을 "010", "1234", "5678"로 나눈 배열을 만드세요.
❗️slice 이용하기.
상수 number는 핸드폰 번호가 담긴 문자열입니다.
예상결과
console.log(arr) // ["010", "1234", "5678"]
풀이과정
소요시간(20분)
- slice로 010,124,5678 을 나누기는 했지만 합치니까 '01012345678' 다 붙어버렸다.. 🙄 무조건 맞을거라 생각했는데 틀렸음.
- 레퍼런스 코드를 보니, push를 이용했음
const number = "01012345678" Case 1 let arr = [] arr.push(number.slice(0,3)) arr.push(number.slice(3,7)) arr.push(number.slice(7,11)) Case 2 let arr =[number.slice(0,3), number.slice(3,7), number.slice(7,11)]]
위 코드를 보니, 내가 한것처럼 종료 인덱스를 꼭 뒤에서부터 세지 않아도 되나보다! 시작 인덱스는 포함, 종료인덱스는 미포함 이라는 것만 기억하면 되겠다.
❗️'01012345678' 이렇게 붙은걸 나누고 싶어서 아래처럼 쓰니까 결과값이 다 스트링으로 나왔다ㅋㅋㅋㅋㅋㅋ
""
<- 나누는거 아님..스트링임..기억하기..!arr = ["newArr1" + "newArr2" + "newArr3"] ['newArr1newArr2newArr3']
다시 작성해본 코드. 해결완료! 에러는.. 자꾸 괄호 안닫아서 ㅎㅎㅎ