반응형


1. 자바스크립트 - 배열 메소드(Array methods)

push() : 뒤에 삽입
pop() : 뒤에 삭제
unshift() : 앞에 삽입
shift() : 앞에 삭제

------------------------------------------------------------

2. arr.splice(n, m) : 특정 요소 지움

let arr = [1, 2, 3, 4, 5];
arr.splice(1, 2);

console.log(arr);

arr.splice(n, m, x) : 특정 요소 지우고 추가

let arr = [1, 2, 3, 4, 5];

arr.splice(1, 3, 100, 200);

console.log(arr);

arr.splice(n, m, x)  : 특정 요소 지우고 추가
- m: 두번째 인수의 0을 넣으면 아무것도 지우지 않고 중간에 새로운 요소를 추가

let arr = ["나는", "제이슨", "입니다."];

arr.splice(1, 0, "대한민국", "경찰관");

console.log(arr);

------------------------------------------------------------

3. arr.splice() :  삭제된 요소 반환

let arr = [ 1, 2, 3, 4, 5];

let result = arr.splice(1, 2);

console.log(arr);
console.log(result);

------------------------------------------------------------

4. arr.slice(n, m) : n부터 m까지 반환

let arr = [ 1, 2, 3, 4, 5];
arr.slice(1, 4);

let arr2 = arr.slice();
console.log(arr2);

------------------------------------------------------------

5. arr.concat(arr2, arr3, ...) : 합쳐서 새배열 반환

let arr = [1, 2];
arr.concat([3,4]);

arr.concat([3,4],[5,6]);
arr.concat([3,4],5,6);

------------------------------------------------------------

6. arr.forEach(fn) : 배열 반복
- 첫번째는 해당 요소이고 두번째는 인덱스임
  세번째는 해당 배열 자체를 의미

let users = ['Mike', 'Tom', 'Jane'];
users.forEach((item, index, arr) => {
//
});

let users = ['Mike', 'Tom', 'Jane'];
users.forEach((name, index) => {
  console.log(name);
});

let users = ['Mike', 'Tom', 'Jane'];
users.forEach((name, index) => {
  console.log(`${index+1}. ${name}`);
});

------------------------------------------------------------

7. arr.indexOf / arr.lastIndexOf

let arr = [1, 2, 3, 4, 5, 1, 2, 3];

arr.indexOf(3);
arr.indexOf(3, 3);
arr.lastIndexOf(3);

------------------------------------------------------------

8. arr.includes() : 포함하는지 확인

let arr = [1, 2, 3];

arr.includes(2);
arr.includes(8);

------------------------------------------------------------

9. arr.find(fn) / arr.findIndex(fn)

첫번째 true값만 반환하고 끝. 만약 없으면 undefined를 반환

let arr = [1, 2, 3, 4, 5];

const result = arr.find((item) => {
  return item % 2 === 0;
});

console.log(result);

// find / findIndex

let userList = [
  { name: "Mike", age: 30},
  { name: "Jane", age: 27},
  { name: "Tom", age: 10},
];

const result = userList.find((user) => {
  if (user.age < 18) {
    return true;
  }
  return false;
});

console.log(result);

------------------------------------------------------------

10. arr.filter(fn) : 만족하는 모든 요소를 배열로 반환

const arr = [1, 2, 3, 4, 5, 6];

const result = arr.filter((item) => {
  return item % 2 === 0;
});

console.log(result);

------------------------------------------------------------

11. arr.reverse() : 역순으로 재정렬

let arr = [1, 2, 3, 4, 5];

arr.reverse();

------------------------------------------------------------

12. arr.map(fn)

함수를 받아 특정 기능을 시행하고 새로운 배열을 반환

// arr.map()

let userList = [
  { name: "Mike", age: 30},
  { name: "Jane", age: 27},
  { name: "Tom", age: 10},
];

let newUserList = userList.map((user, index) => {
  return Object.assign({}, user, {
    isAdult: user.age > 18,
  });
});

console.log(newUserList);

// arr.map()

let userList = [
  { name: "Mike", age: 30},
  { name: "Jane", age: 27},
  { name: "Tom", age: 10},
];

let newUserList = userList.map((user, index) => {
  return Object.assign({}, user, {
    id: index + 1,
    isAdult: user.age > 18,
  });
});

console.log(newUserList);
console.log(userList);

------------------------------------------------------------

// join, split

let arr = ["안녕", "나는", "제임스야"];

let result = arr.join();

console.log(result);

------------------------------------------------------------

let arr = ["안녕", "나는", "제임스야"];

let result = arr.join("   ");

console.log(result);

------------------------------------------------------------

// split

const users = "Mike, Jane, Tom, Tony";

const result = users.split(",");

console.log(result);

------------------------------------------------------------

// split

let str = "Hello, My name is Mike.";
const result = str.split("");

console.log(result);

------------------------------------------------------------

// Array.isArray()

let user = {
  name : "Mike",
  age: 30,
};

let userList = ["Mike", "Tom", "Jane"];

console.log(typeof user);
console.log(typeof userList);

console.log(Array.isArray(user));
console.log(Array.isArray(userList));

 

반응형
반응형

코드의 질이 달라질 배열함수 7종세트! | 당신의 코드가 더러운덴 이유가 있다 | 코드리뷰 | 연습문제까지

https://youtu.be/kLYdgg0ljTk

자바스크립트 배열은 인덱스가 0부터 시작한다. 즉, 배열 첫 번째 요소의 인덱스는 0이고, 마지막 요소의 인덱스는 배열의 length 속성에서 1을 뺀 것과 같다. 잘못된 인덱스를 사용하면 undefined를 반환한다.

let arr = ['첫번째', '두번째', '세번째'];

let names = ["Steven Paul Jobs",
"Bill Gates",
"Mark Elliot Zuckerberg",
"Elon Musk",
"Jeff Bezos",
"Warren Edward Buffett",
"Larry Page",
"Larry Ellison",
"Tim Cook",
"Lloyd Blankfein"]

for(let i=0;inames.length;i++){
console.log(names[i])
}

function printName(item){
console.log(item)
}

names.forEach(printName)

names.forEach(function (item){
console.log(item)
})

names.forEach((item)=>{console.log(item)})

//forEach : 반환값없음
names.forEach((item, index)=>{console.log(item, index)})

let ceoList=[
{name: "Larry Page", age:23, ceo:true},
{name: "Tim Cook", age:40, ceo:true},
{name: "Elon Musk", age:55, ceo:false},
]

//map : 반환값이 있다. 반드시 array 리턴한다
let data= names.map((item)=>{
return item
})
console.log(data)


let data1= ceoList.map((item)=>{
//return item.name
            return item.age
})
console.log(data1)


let data2= names.filter((item)=>{
return item.age==23
})
console.log("filer:",data2)


let data3= names.filter((item)=>{
return item.startsWith("L") //조건문은 true,false
})
console.log("filer:",data3)


let data4= names.some((item)=>{
return item.startsWith("L")
})
console.log("some:",data4)


let data5= names.every((item)=>{
return item.startsWith("L")
})
console.log("every:",data5)

let data6= names.every((item)=>{
return item.length>0
})
console.log("every:",data6)


let data7= names.find((item)=>{
return item=="Larry Page"
})
console.log("find:",data7)


let data8= names.findIndex((item)=>{
return item=="Larry Page"
})
console.log("findIndex:",data8)

반응형

'개발 및 관리 > HTML, CSS, Javascript, DOM' 카테고리의 다른 글

Form기본태그  (0) 2021.12.27
TABLE, IFRAME, LAYER 만들기  (0) 2021.12.25
HTML 기본태그  (0) 2021.12.24
HTML, CSS, Javascript 무료 온라인 강의  (0) 2021.12.23
Visual studio code - extention  (0) 2021.12.23