문법관련 질문입니다
수업내용에
let classmates = ["철수", "영희", "훈이"]
여기서
classmates.push("맹구")를 넣으면 마지막에 추가기능있는것을 배웠습니다.
그런데 여기서 궁금한게 마지막이 아닌 철수와 영희 사이 또는 영희와 훈이 사이에 넣을수 있는 문법(?)기능이 있을까요?
아 또 pop기능에서는 마지막값 삭제인데 그것말고 원하는 값을 삭제하는 기능이 있을까요?
Answer 2
0
자바스크립트 Array 객체 메서드를 한번 참고해 보시면 좋을 듯 합니다.
추가방법
splice를 통해 제거 또한 가능하며, 중간 index 값에 밀어 넣을 수 있습니다.
1번 인덱스부터 채워가며 두 번째 인자로는 덮어씌울 인덱스를 설정한다고 생각하시면 됩니다.
만일 (1, 3, "맹구", "짱구") 로 인수를 담을 경우,
1번 인덱스부터 3번 인덱스까지 제거하고 3 번째 인수부터 담긴 모든 값들을 채워줍니다.
아래는 삭제하지 않고, 1번 인덱스부터만 추가한 예시입니다.
const spliceArr = ["철수", "영희", "훈이"];
spliceArr.splice(1, 0, "맹구", "짱구");
console.log(spliceArr); // ["철수", "맹구", "짱구", "영희", "훈이"];
제거방법
slice() 메서드를 활용한 특정 index 값 제외나
ES5의 filter() 메서드를 활용하여 원하는 값을 필터링하는 방법이 있습니다.
// Array.prototype.splice()
const spliceArr = ["철수", "영희", "훈이"];
spliceArr.splice(1, 1); // 1 index { 0: "철수", 1: "영희", 2: "훈이" }
console.log(spliceArr); // ["철수", "훈이"]
----------------------------------------------------------------
// Array.prototype.filter();
const filterArr = ["철수", "영희", "훈이"];
const result = filterArr.filter((arr) => arr !== "영희"); // value가 "영희"가 아닌 값을 반환
console.log(result); // ["철수", "훈이"]
----------------------------------------------------------------
// Array.prototype.indexOf() + splice() method
const arr = ["철수", "영희", "훈이"];
const valueIndex = arr.indexOf("영희"); // 1
arr.splice(valueIndex, valueIndex);
console.log(arr); // ["철수", "훈이"]아래 링크도 참고해 보시며 학습해 보시길 추천드립니다.
싸이월드3
0
75
2
싸이월드2 관련 질문 드립니
0
90
3
과제 모범답안 유무
0
87
2
과제 연습 질문
0
69
2
<style> 에 *와 div 차이
0
86
2
과제 profile 부분 질문
0
111
2
과제 Profile 부분 질문
0
84
2
left_body_header의 자식border-top인데
0
75
2
정렬 연습중인데 왜 여성과 남성 칸이 가로로 배열 안되는지 모르겠습니다.
0
126
1
태그 궁금한 점
0
162
2
HTML 회원가입
0
192
2
윈도우 누른치로 마침표 눌렀는데 이모지가 안되는데용.?./.
0
644
2
26분50초에 세로줄 어떻게 해요 ..? ㅎㅎㅎ
0
249
2
피그마에서 css 코드가 안보여요..
1
3208
2
주석기능을 하고 싶은데 컨트롤+느낌표가 안됩니다 ㅠㅠ
0
323
2
언어 설정 -> 한글
0
287
1
2024년 html
0
225
1
피그마 유료화
0
1670
1
Fiama 링크 찾기
0
239
2
Figma는 어디에 있나요?
0
246
1
안녕하세요. 제공되는 노션 학습자료는 어디서 확인가능한가요?
0
353
2
git 질문입니다
0
211
1
아무리 찾아봐도 피그마 링크가 보이질 않습니다.
0
308
1
잔디 질문입니다.
0
239
1

