250x250
Recent Posts
Recent Comments
Link
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
Tags
- ๋ถ์คํธ์บ ํ์น๋ชจ๋ฐ์ผ
- js
- ์ฝ๋ฉํ ์คํธ
- ํ๋ก๊ทธ๋๋จธ์ค
- ์นด์นด์ค์ฑ์ฉ
- custom hook
- ๋๋๊ทธ ์ด๋ฒคํธ
- ๋ฐฑ์ค
- ์ฝ๋ ํฌ๋ฉง
- ๊ณผ์ ํ ์คํธ
- ๋์ ๊ณํ๋ฒ
- ์นด์นด์ค
- DP
- ์๋ฐฉํฅ ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- svgํ์ผ ๋ค๋ฃจ๊ธฐ
- router v6
- React
- icecandidate
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์๊ณ ๋ฆฌ์ฆ
- Redux toolkit
- JavaScript
- ๋ธ๋ฃจํธํฌ์ค
- Node.js
- ์ฝํ
- ๋ถ์คํธ์ปจํผ๋ฐ์ค
- ์ด๋ถํ์
- TypeScript
- ์ด๋ฏธ์ง ์์
- ๋ฆฌ๋์ค ํดํท
Archives
- Today
- Total
๐ฅ dev-ruby
[์๋ฐ์คํฌ๋ฆฝํธ] ๊ฐ์ฒด(Object) ๋ฐ๋ณต๋ฌธ ๋๋ฆฌ๋ ๋ฒ ๋ณธ๋ฌธ
728x90
๋ฐ์ํ
SMALL
for...in ๋ฌธ, for...of ๋ฌธ
for...in
for...in ๋ฌธ์ ๊ฐ์ฒด์ key๋ฅผ ํ๋์ฉ ๊ฐ์ ธ์จ๋ค.
const obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
}
for (const key in obj) {
console.log(obj[key]);
}
// value1
// value2
// value3
for...of
for...of ๋ฌธ์ iterableํ ์์ฑ์ ์ง๋ String, Array, TypedArray, Map, Set์์ ๊ฐ์ ํ๋์ฉ ๊ฐ์ ธ์จ๋ค.
๊ฐ์ฒด๋ iterable์ด ์๋๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ ์ ์๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ Object.keys(object) ํน์ Object.values(object)๋ฅผ ํตํด ๋ฐฐ์ด๋ก ๋ฐ๊ฟ์ ๊ฐ์ ๊ฐ์ ธ์์ผ ํ๋ค.
Object.entries(object)๋ฅผ ์ด์ฉํ๋ฉด enumerable ์์ฑ์ key์ value ๋ฐฐ์ด์ ๋์์ ๊ฐ์ ธ์ฌ ์๋ ์๋ค.
const obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
}
for (const value of obj) { // TypeError: obj is not iterable
console.log(value);
}
for (const key of Object.keys(obj)) {
console.log(key);
}
// key1
// key2
// key3
for (const value of Object.values(obj)) {
console.log(value);
}
// value1
// value2
// value3
for (const [key, value] of Object.entries(obj)) {
console.log(key + ': ' + value);
}
// key1: value1
// key2: value2
// key3: value3
728x90
๋ฐ์ํ
LIST