-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path03_array.js
More file actions
96 lines (87 loc) · 2.16 KB
/
03_array.js
File metadata and controls
96 lines (87 loc) · 2.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
//foreach
const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
arr.forEach((item, index, array) => console.log(item));
arr.forEach(console.log); // 함수가 들어갈수도 있다
//전달맏은 패러미터를 다 쓰겠다
//자바는 전달받은 패러미터와 구현된 패러미터의 갯수가 맞아야함
//자바스크립트는 쓸수 있으면 쓰고 엄격하지 않음
//map은 길이가 보존되는 사본
//filter
//조건을 만족하는 경우만 남긴다.
console.log(arr.filter((item) => item % 2 === 0));
console.log(arr.filter((item) => !(item % 2))); // syntatic sugar
console.log(arr.filter((item) => item % 2).filter((item) => item > 5));
// reduce
// 배열.reduce(함수, 초기값) 초기값 생략 시 배열 첫째값
console.log("reduce--------------");
console.log("arr: " + arr);
//arr.reduce((prev, curr) => prev + curr, 0)
arr.reduce((prev, curr) => {
console.log(prev, curr);
return prev + curr;
}, ""); //초기값을 문자열로 넣으면 문자열 연산을 함
console.log(
arr.reduce((prev, curr) => {
return prev + curr;
}, "")
);
//sort. 정렬
const num = [1, 5, 2, 4, 3];
num.sort((a, b) => a - b); //오름차순
console.log("sort : " + num);
num.reverse(); // 내림차순
console.log("reverse : " + num);
console.log(num.toSorted); // 원본에는 영향을 안미치면서
console.log(num.toReversed);
const users = [
{
name: "kim",
age: 30,
job: "programmer",
},
{
name: "lee",
age: 25,
job: "designer",
},
{
name: "park",
age: 35,
job: "product manager",
},
{
name: "choi",
age: 28,
job: "data scientist",
},
{
name: "jung",
age: 42,
job: "backend developer",
},
{
name: "kang",
age: 31,
job: "frontend developer",
},
{
name: "cho",
age: 29,
job: "devops engineer",
},
{
name: "yoon",
age: 38,
job: "project manager",
},
{
name: "jang",
age: 26,
job: "qa engineer",
},
{
name: "lim",
age: 33,
job: "software engineer",
}
]