iPod Video White

๐Ÿ““ TIL

[220417] Data type / ๋‚ด์žฅ ๋ฉ”์†Œ๋“œ

k_m_jin 2022. 4. 18. 20:26

๋ฆฌํ„ฐ๋Ÿด ๋ฐฉ์‹

ํŠน์ •ํ•œ ๊ธฐํ˜ธ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๋ฐฉ์‹

์›๋ž˜๋Š” new ๋ผ๋Š” ํ‚ค์›Œ๋“œ๋กœ ๊ฐ ์ „์—ญ๊ฐ์ฒด๋“ค๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋งŒ๋“ค์–ด๋ƒ„

prototype

๋ฌธ์ž

str.indexOf(‘heropy’) !== -1

: boolean ๋ฐ์ดํ„ฐ๋กœ ํ•ด๋‹น ๋‹จ์–ด๊ฐ€ ์žˆ๋Š”์ง€ ์ฐพ๋Š” ๋ฐฉ๋ฒ•

 

str.replace( ๋ฐ”๊ฟ€ ๋ฌธ์ž, ๋„ฃ๊ณ ์‹ถ์€ ๋ฌธ์ž)

 

str.match( )

 

str.trim()

: ๋ฌธ์ž์—ด์˜ ์•ž๋’ค ๊ณต๋ฐฑ ์ œ๊ฑฐ

 

์ˆซ์ž

math : ๋‚ด์ • ๊ฐ์ฒด. ํ•จ์ˆ˜ ๊ฐ์ฒด๊ฐ€ ์•„๋‹˜..

math.floor (math.random() *10)

: ๋žœ๋˜ํ•œ ์ •์ˆ˜

 

๋ฐฐ์—ด

elements == item

forEach

: ์•„์ดํ…œ์˜ ๊ฐฏ์ˆ˜๋งŒํผ ์ฝœ๋ฐฑ๋ฌธ์„ ๋ฐ˜๋ณต

๋ฐ˜ํ™˜๋˜๋Š” ๊ฐ’์€ ์—†์Œ

 

map

: ์•„์ดํ…œ์˜ ๊ฐฏ์ˆ˜๋งŒํผ ์ฝœ๋ฐฑ๋ฌธ์„ ๋ฐ˜๋ณตํ•˜์—ฌ ๋ฆฌํ„ด์„ ํ†ตํ•ด ์ƒˆ๋กœ์šด ๋ฐฐ์—ด ์ƒ์„ฑ

 

filter

: ํ•„ํ„ฐ๋ง์„ ํ•ด์„œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์ƒ์„ฑ

 

find()

: ํŠน์ •ํ•œ ์กฐ๊ฑด์˜ ์ฒซ๋ฒˆ์งธ ์•„์ดํ…œ์„ ์ฐพ์•„์คŒ

 

findIndex()

: ํŠน์ •ํ•œ ์กฐ๊ฑด์˜ ์ฒซ๋ฒˆ์งธ ์•„์ดํ…œ์˜ index๋ฅผ ์ฐพ์•„์คŒ

 

includes(ํ™•์ธํ•  ๋ฐ์ดํ„ฐ)

: ์ธ์ˆ˜์˜ ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ๋ถˆ๋ฆฐ ๋ฐ์ดํ„ฐ๋กœ ๋ฐ˜ํ™˜

 

์›๋ณธ์ด ์ˆ˜์ •๋จ!!!

push()

: ๊ฐ€์žฅ ๋’ท์ชฝ์˜ ์ธ์ˆ˜๋ฅผ ์‚ฝ์ž…

 

unshift()

: ๊ฐ€์žฅ ์•ž์ชฝ์— ์ธ์ˆ˜๋ฅผ ์‚ฝ์ž…

 

reverse()

: ๋ฐฐ์—ด์˜ ์ˆœ์„œ๋ฅผ ๋’ค์ง‘์Œ

 

splice(์‹œ์ž‘ํ•  ์ธ๋ฑ์Šค, ์ง€์šธ ๊ฐฏ์ˆ˜, ๊ทธ ์ž๋ฆฌ์— ์‚ฝ์ž…ํ•  ๋ฐ์ดํ„ฐ)

: 1 ์ง€์šฐ๋Š” ๊ธฐ๋Šฅ

2 ๋ผ์›Œ๋„ฃ๋Š” ๊ธฐ๋Šฅ

 

๊ฐ์ฒด

protptype ์ด ์—†๋Š” ๋ฉ”์†Œ๋“œ๋Š” static ๋ฉ”์†Œ๋“œ == ์‹ค์ฒด ๊ฐ์ฒด ๋ฐ์ดํ„ฐ์—๋Š” ์‚ฌ์šฉ ๋ถˆ๊ฐ€  == Object ๋ผ๋Š” ์ „์—ญ๊ฐ์ฒด์— ์ง์ ‘ ์‚ฌ์šฉ

 

Object.assign( ๋Œ€์ƒ ๊ฐ์ฒด, ์ถœ์ฒ˜ ๊ฐ์ฒด)

: ์ถœ์ฒ˜๊ฐ์ฒด์˜ ์†์„ฑ์„ ๋Œ€์ƒ๊ฐ์ฒด์— ๋ณต์‚ฌํ•œ๋‹ค

ํ‚ค๊ฐ€ ๊ฐ™์„๋• ๊ฐ’์„ ๋ฎ์–ด์“ด๋‹ค.

 

const target =Object.assign( { }, ๊ฐ์ฒด1, ๊ฐ์ฒด2)

: ๊ฐ์ฒด 1๊ณผ 2๊ฐ€ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋กœ ๋ณต์‚ฌ๋˜๊ณ  ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋Š” target๋กœ ๋ฐ˜ํ™˜ -> ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋กœ ๋ณต์‚ฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉ

 

 

Object.keys( )

: property์˜ key(name) ๋งŒ ์ถ”์ถœํ•ด์„œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด ์ƒ์„ฑ 

 

1 ์  ํ‘œ๊ธฐ๋ฒ• user.email

2 ์ธ๋ฑ์‹ฑ ๋ฒ• user[‘email’]

property name == property value ๋ผ๋ฉด ํ•˜๋‚˜๋ฅผ ์ƒ๋žต๊ฐ€๋Šฅ

const title = 'happy';
const birth = 2022;
const user ={
	title : title,   //title,
	birth : birth    //birth
};

๊ฐ์ฒด ๋‚ด๋ถ€์—์„œ ํ•จ์ˆ˜ ์„ ์–ธ์‹œ [ : function] ์ƒ๋žต๊ฐ€๋Šฅ

const user = {
	getFullName : function() {      //getFullName () {
		return 'hi';
	}
}
console.log(user.getFullName());

๊ตฌ์กฐ ๋ถ„ํ•ด ํ• ๋‹น destructuring assignment

๊ฐ์ฒด ๋ฐฐ์—ด์— ์‚ฌ์šฉ๊ฐ€๋Šฅ

 

 

๊ธฐ๋ณธ๊ฐ’ ์„ค์ •

 

user ๊ฐ์ฒด์˜ name ์ด๋ผ๋Š” ์†์„ฑ์„ ๊บผ๋‚ด์„œ heropy ๋ผ๋Š” ๋ณ€์ˆ˜์— ํ• ๋‹น

 

 

๋ฐฐ์—ด์„ ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋• name์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์„œ๋Œ€๋กœ ์ถ”์ถœ

 

๋’ค์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•

 

 

์ „๊ฐœ ์—ฐ์‚ฐ์ž  (Spread ) …

- ๋ฐฐ์—ด์€ ์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋˜๋Š” ๊ฐ๊ฐ์˜ ์•„์ดํ…œ์œผ๋กœ ์ „๊ฐœํ•ด์คŒ

- ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ๋ฌถ์€ ๊ฑธ ํŽผ์น˜๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋‚˜์˜ ๊ฐ’์ด ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๊ฐ’์˜ ๋ชฉ๋ก

- ๊ตฌ๋ฌธ ์ž์ฒด๊ฐ€ ๊ฐ’์ด ์•„๋‹˜

 

toObject( )

: ๊ฐ์ฒด ๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜

 

rest parameter

 

์†์„ฑ์˜ ์ด๋ฆ„๊ณผ ๋ฐ์ดํ„ฐ์˜ ์ด๋ฆ„์ด ๊ฐ™์œผ๋ฉด ํ•˜๋‚˜ ์ƒ๋žต๊ฐ€๋Šฅ

 

 

๋ฐ์ดํ„ฐ ๋ถˆ๋ณ€์„ฑ (Immutability)

๋ฐ์ดํ„ฐ๋งˆ๋‹ค ํ•˜๋‚˜์˜ ์ฃผ์†Œ ๋ฐฐ์ •

์›์‹œ ๋ฐ์ดํ„ฐ

๊ฐ’๋งˆ๋‹ค ์ฃผ์†Œ๊ฐ€ ์ƒˆ๋กœ ๋งŒ๋“ค์–ด์ง€๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ์›๋ž˜ ์žˆ๋˜ ๋ฐ์ดํ„ฐ์˜ ์ฃผ์†Œ๋ฅผ ๋ถ€์—ฌ

์›์‹œ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ ์ž์ฒด๊ฐ€ ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ฐธ์กฐํ˜• ๋ฐ์ดํ„ฐ

์ƒˆ๋กœ์šด ๊ฐ’์„ ๋งŒ๋“ค๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ํ• ๋‹น

๋ถˆ๋ณ€์„ฑ์ด ์—†์Œ == ๊ฐ€๋ณ€์„ฑ

์ฐธ์กฐ ๋ฐ์ดํ„ฐ์˜ ํ• ๋‹น์€ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ฐธ์กฐ ์ฃผ์†Œ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ

์ฐธ์กฐํ˜• ๋ฐ์ดํ„ฐ๋Š” ์˜๋„ํ•œ๊ฒŒ ์•„๋‹ˆ๋ผ๋ฉด ๋ณต์‚ฌ๋ฅผ ํ•ด์•ผ ํ•จ

 

๋ณต์‚ฌ

์–•์€ ๋ณต์‚ฌ Shallor copy

๋ณต์‚ฌํ•  ์ฐธ์กฐ๋ฐ์ดํ„ฐ ์•ˆ์— ๋˜๋‹ค๋ฅธ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์‚ฌ์šฉ

1 Object.assign

2 spread

user.email ๋Š” ๋ฐฐ์—ด๋ฐ์ดํ„ฐ=์ฐธ์กฐ๋ฐ์ดํ„ฐ

  

 

 

 

๊น‰์€ ๋ณต์‚ฌ Deep copy

์ฐธ์กฐ์…ฉ ๋ฐ์ดํ„ฐ ์•ˆ์— ๋“ค์–ด๊ฐ€์„œ ์•ˆ์— ์žˆ๋Š” ์ฐธ์กฐ ๋ฐ์ดํ„ฐ๋„ ์ „๋ถ€ ๋ณต์‚ฌ

import _ from lodash 

 

์ถœ์ฒ˜ : (KDT FE2) ํ•œ ๋ฒˆ์— ๋๋‚ด๋Š” ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ ์ดˆ๊ฒฉ์ฐจ ํŒจํ‚ค์ง€ Online. ๋ฐ•์˜์›… ๊ฐ•์‚ฌ๋‹˜

๋ฐ˜์‘ํ˜•

'๐Ÿ““ TIL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[220419] export / import / lodash / Json  (0) 2022.04.19
[220418] JS data type  (0) 2022.04.18
[220415] switch statement  (0) 2022.04.15
[220412] grid  (0) 2022.04.13
[220412] ์Šคํƒ€๋ฒ…์Šค ์˜ˆ์ œ  (0) 2022.04.12