JS/JAVASCRIPT

배열(Array)

ddururu 2025. 1. 25. 12:07

배열 선언

let arr = [];

대부분 이 방법으로 배열을 선언한다.

인덱스

  • 배열의 순서를 나타낸다.
  • 0부터 시작된다.
  • 대괄호 안에 인덱스를 넣어주면

배열 내 특정 요소를 얻기

let fruit = ["apple", "orange","banana","mango"];

console.log(fruit[0]);//사과
console.log(fruit[1]);//오렌지
console.log(fruit[2]);//바나나
console.log(fruit[3]);//망고​

배열의 요소를 수정하기

let fruits = ["apple", "orange", "mango"];

fruits[2] = 'grape'; // 배열이 ["apple", "orange", "grape"]로 바뀜

 

새로운 요소를 배열에 추가하기

let fruits = ["apple", "orange","banana"]
fruits[3] = "mango" 
//배열이 ["apple", "orange","banana","mango"]로 바뀜​

배열 관련 함수

pop(); - 배열 끝에 있는 아이템을 제거, 그 아이템 값을 리턴

let fruits = ["apple", "orange","banana"]

fruits.pop(); // 마지막 배열에 있는 아이템을 삭제함
console.log(fruits); //   ["apple", "orange"]​

push(); 배열 끝에 아이템 추가, 배열의 최종 길이 리턴

let fruits = ["apple", "orange","banana"]


fruits.push("pineapple");//("")을 배열 마지막에 추가함
console.log(fruits); // ["apple", "orange", "banana", "pineapple"]​

includes(); - 배열에 아이템이 포함되어 있으면 true, 아니면 false 리턴

let fruits = ["apple", "orange","banana"]


fruits.includes("apple"); //("")을 포함하고 있어?
console.log(fruits.includes("apple")); //true​

indexOf(); - 아이템의 인덱스 번호를 리턴

let fruits = ["apple", "orange", "banana", "mango"]


fruits.indexOf("banana");//("banana")의 인덱스 번호가 뭐야?
console.log(fruits.indexOf("banana")); //2

slice(시작점, 끝점); - 시작점~끝점(미포함)까지 배열을 복사해서 리턴 (잘린 값이 반환) / 기존의 배열을 건드리지 않음, 새로운 배열을 만듦

let fruits = ["apple", "orange", "banana", "mango"]

console.log(fruits.slice(2)); //["banana", "mango"]
console.log(fruits.slice(1)); //[ "orange", "banana", "mango"]

console.log(fruits.slice(1,3)); //(시작점, 끝(이전까지))1번부터(포함) 3번이전까지
 // ["apple", "mango"]
 
let extraFruit = fruits.slice(1,3);
console.log(extraFruit ); //  ["apple", "mango"]

splice(시작점, 개수); - 시작점부터 개수만큼 실제 배열에서 아이템 제거(제거 한 값이 나옴) / 기존의 배열이 잘림

let fruits = ["apple", "orange", "banana", "mango"]

console.log(fruits.splice(1,3)); //["orange", "banana", "mango"]

fruits.splice(2, 2)
console.log(fruits); //["apple", "orange"]​

배열 문제 풀기

let animals= [
"Aardvark",
"Albatross",
"Alligator",
"Alpaca",
"Ant",
"Ape",
"Armadillo",
"Donkey",
"Baboon",
"Badger",
"Barracuda",
"Bat",
"Bear",
"Beaver",
"Bee",
"Bison",
"Cat",
"Caterpillar",
"Cattle",
"Chamois",
"Cheetah",
"Chicken",
"Chimpanzee",
"Chinchilla",
"Chough",
"Clam",
"Cobra",
"Cockroach",
"Cod",
"Cormorant",
"Dugong",
"Dunlin",
"Eagle",
"Echidna",
"Eel",
"Eland",
"Elephant",
"Elk",
"Emu",
"Falcon",
"Ferret",
"Finch",
"Fish",
"Flamingo",
"Fly",
"Fox",
"Frog",
"Gaur", 
"Gazelle",
"Gerbil",
"Giraffe",
"Grasshopper",
"Heron",
"Herring",
"Hippopotamus",
"Hornet",
"Horse",
"Kangaroo",
"Kingfisher",
"Koala",
"Kookabura",
"Moose",
"Narwhal",
"Newt",
"Nightingale",
"Octopus",
"Okapi",
"Opossum", 
"Quail",
"Quelea",
"Quetzal",
"Rabbit", 
"Raccoon",
"Rail",
"Ram",
"Rat",
"Raven",
"Red deer",
"Sandpiper",
"Sardine",
"Sparrow",
"Spider",
"Spoonbill",
"Squid",
"Squirrel",
"Starling",
"Stingray",
"Tiger",
"Toad",
"Whale",
"Wildcat",
"Wolf",
"Worm",
"Wren",
"Yak",
"Zebra"]​
// 어레이에 마지막 아이템 "Zebra" 제거하기
animals.pop();
console.log(animals);


//주어진 어레이에 "Dog"추가하기
animals.push("Dog");
console.log(animals);


//주어진 어레이에 "Mosquito","Mouse","Mule" 추가하기
animals.push("Mosquito","Mouse","Mule");
console.log(animals);


//해당 어레이에는 "Human"이 있는가?
console.log(animals.includes("Human"));


//해당 어레이에는 "Cat" 이 있는가?
console.log(animals.includes("Cat"));


//"Red deer"을  "Deer"로 바꾸시오 
animals.indexOf("Red deer")
	//--방법1
console.log(animals.indexOf("Red deer"));
console.log(animals[77]="Deer")
	//--방법2
animals[animals.indexOf("Red deer")] = "Deer"


//"Spider"부터 3개의 아이템을 기존 어레이에서 제거하시오
animals.splice(animals.indexOf("Spider"),3)
console.log(animals);


// "Tiger"부터 그 이후의 값을 제거하시오 (Tiger 포함임)
animals.splice(animals.indexOf("Tiger"))
console.log(animals);


//"B"로 시작되는 아이템인 "Baboon"부터 "Bison"까지 가져와 새로운 어레이에 저장하시오
let newList = animals.slice(animals.indexOf("Baboon"),animals.indexOf("Bison")+1)
console.log(newList);