For in , for of , forEach 간단 실습 내용

kevin07·2022년 10월 11일
0

for in 과 for of , forEach 문 은 사용해본적이 거이 없어 작동과 결과가 어떻게 이뤄지고 어떻게 쓰나 궁금했는데 간단한 실습을 통해 기본 개념을 익히는 코드를 작성했다.

— For in —
var obj = {
a : 1,
b : 2
};
for(var i in obj){
console.log(i, obj[i]);
}

——출력—
a – 1
b – 2

— for of —

var value 에 i 나 k 등 일변 변수명 넣으면 배열 에 aa 만 출력됨.

// obj 객체 일땐 출력 x

var arr = ['dd','aa'];
for(var value of arr){
console.log(value);
}
dd
aa

—forEach 함수 실습—

const array1 = ['a', 'b', 'c'];

array1.forEach(function(element){console.log(element)});

array1.forEach(element=>console.log(element + 'a'));

// expected output: "a"
// expected output: "b"
// expected output: "c"

// aa
// ba
// ca

reduce()- 배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환
ex- const array1 = [1,2,10];

// 1 + 2 +10
const initialValue = 0;
const sumReduce = array1.reduce(
(previousValue, currentValue) => previousValue + currentValue,
initialValue
);

console.log(sumReduce);
출력- 13

reduce 메서드는
다음과 같이 사용 배열.reduce((누적값, 현잿값, 인덱스, 요소) => { return 결과 }, 초깃값);
이전값이 아니라 누적값이라는 것에 주의누적값이기 때문에 다양하게 활용할 수 있음

replace('abc','000') : 'abc'를 '000'으로 변환 / 원본 변하지 않음

map()-map 함수는 callbackFunction을 실행한 결과를 가지고 새로운 배열을 만들 때 사용
let arr = [3, 4, 5, 6];

let modifiedArr = arr.map(function(element){
return element *3;
});

console.log(modifiedArr); // [9, 12, 15, 18]
map() 메소드를 사용하여 배열에 대해 반복 처리
Array.map() 메소드는 위의 코드에서와 같이 특정 숫자를 곱하거나, 애플리케이션에 필요한 다른 작업을 수행하는 등 요소에 어떤 변경 사항을 적용하는 데 사용

map 메서드는 다음과 같이 사용. 배열.map((요소, 인덱스, 배열) => { return 요소 }); 반복문을 돌며 배열 안의 요소들을 1대1로 짝지어 주는 것. 그래서 이름이 map. 매핑. 어떻게 짝지어줄 것인가 정의한 함수를 메서드의 인자로 넣어주면 되는 것.

slice(start,end) : start부터 end전까지 자르기 / 원본 변하지 않음 / 음수 허용

indexOf('a') : 문자 'a'가 위치한 인덱스 중 가장 왼쪽 / 없으면 -1

includes('a') : 문자 'a'의 존재 여부

str.concat(str2) : str 뒤에 str2 붙히기 / 원본 변하지 않음
let str = 'abc';
let str2 = 'def';

str.concat(str2); // 'abcdef'

sort() : 조건에 맞게 정렬 / 원본 변함
return 1 (반환값 > 0) : b가 a보다 앞으로 위치
return -1 (반환값 < 0) : a가 b보다 앞으로 위치
return 0 : a와 b 순서를 바꾸지 않음

filter -filter() 메서드는 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환합니다.
filter 함수는 배열의 요소를 순차적으로 순회하면서 조건에 일치하는 요소를 모아 새로운 배열을 반환합니다.

forEach -Array 객체에서만 사용가능한 메서드로 배열의 요소들로 반복하여 작업을 수행
배열의 값을 하나씩 순차적으로 해당 함수에 전달.
배열이 가진 모든 값으로 순차적으로 리턴값이 없는 함수를 처리한
주어진 함수를 배열 요소 각각에 대해 실행

join-메서드는 배열의 모든 요소를 연결해 하나의 문자열로 만듬.
forEach(function(item, index, arr){ ... })
item : 배열의 각 대상을 의미.
index : 배열의 순서를 의미. (현재 몇번째 반복문이 돌고있는지)
arr : forEach 반복문에 사용되는 배열 의미

함수(function)란 하나의 특별한 목적의 작업을 수행하도록 설계된 독립적인 블록을 의미합니다.
이러한 함수는 필요할 때마다 호출하여 해당 작업을 반복해서 수행

0개의 댓글