์ค๋์ ์กฐ๊ฑด๋ฌธ ์ฝํ๋ฆฟ๊ณผ ๋ฌธ์์ด ์ด๋ก , ์ฝํ๋ฆฟ์ด ์์ด์ ์๋กญ๊ฒ ๋ฐฐ์ด ๋ด์ฉ๋ณด๋ค๋ ๋ฐฐ์ด ๋ด์ฉ์ ์ตํ๋ ๋ ์ ๊ฐ๊น์ ๋ค.
๋ฌธ์์ด์ ๋ง ๊ทธ๋๋ก ๋ฌธ์์ ๋์ด์ด๋ค.
let s = 'Sunghoon'
let f = ' wanna be a developer.';
let a = 'Dream comes '
let b = true;
console.log(a + b) // 'Dream comes true'
.length property ์ฌ์ฉ๊ฐ๋ฅ
๋ฌธ์์ด ๋ค์ ๋ถ์ผ๋ฉด ๊ธ์ ์(Number type) ์ถ๋ ฅ
index๊ฐ 0๋ถํฐ ์์.
๋ฌธ์์ด ๋ฉ์๋๋ ์ ๋ถ immutable.
๋ณต์ฌํด์ ์ถ๋ ฅ์ ๋ฉ์๋ ์กฐ๊ฑด์ ๋ง์ถฐ ์ถ๋ ฅํ๋๊ฑฐ์ง ๋ณ์ ์์ฒด์๋ ์ํฅ์ด ์์.
์ฐจํ์ ๋ฐฐ์ธ ๋ฐฐ์ด(Array) ๋ฉ์๋๋ mutable ๋ฉ์๋๋ ์์ด์ ์ ์๊ฐ ํ์ํจ.
๋ฌธ์์ด ์ ๊ธ์ ์ฐพ๋ Method.
์ค๋ณต๋ ๋ฌธ์์ด์ ๊ฐ์ฅ ๊ธ์ ์์น ์ถ๋ ฅ.
์ฐพ๊ณ ์ ํ๋ ๊ธ์๊ฐ ์์ผ๋ฉด -1 ์ถ๋ ฅ.
str.lastindexOf('a')
๋ค์์ ๋ถํฐ ์ฐพ๊ณ ์ฒ์ ์ฐพ์ ๊ฐ์ ์์์๋ถํฐ ์ธ์ ์์น ์ถ๋ ฅ.
str.includes('a')
ํด๋น ๊ฐ ์ ๋ฌด ๋ถ๋ฆฌ์ธํ์
์ผ๋ก ์ถ๋ ฅ.
let sunghoon = 'Sunghoon wanna be a developer.';
//str.indexOf('a') ์์
sunghoon.indexOf('wanna'); // 9
sunghoon.indexOf('Wanna'); // -1 #๋์๋ฌธ์ ๊ตฌ๋ถ
sunghoon.indexOf('e'); // 16 ์ต์ด ์์น
//str.lastIndexOf('a') ์์
sunghoon.lastIndexOf('e'); // 27 ๋ค์์ ๋ถํฐ ์ฐพ์์ ๋ ์ฒซ ๊ธ์ ์์น
//str.includes('a') ์์
sunghoon.includes('sunghoon') // false
์ธ์ - ๋ถ๋ฆฌํ ๊ธฐ์ค์ด ๋ ๋ฌธ์์ด.
์ธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ์์ ๋ฌธ์์ด์ ์์๋ก ๊ฐ์ง ๋ฐฐ์ด ์ถ๋ ฅ.
csv ํ์ผ ๋ถ๋ฅ์ ํธ๋ฆฌํ๋ฉฐ ์ค๋ฐ๊ฟ์ '\n'์ผ๋ก ๊ธฐ์ค ์ค์ ๊ฐ๋ฅ
๋ฌธ์์ด์ค ์ผ๋ถ๋ฅผ ์ถ๋ ฅํ๋ ๋ฉ์๋.
๋ ๋ฉ์๋ ๋ค ์ธ์๋ฅผ ๋๊ฐ ๊ฐ์ง๋ฉฐ ๊ฐ๊ฐ (start, end) ์ธ๋ฑ์ค ๊ฐ์ ์ธ์๋ก ๊ฐ์ง๋ค.
start ์์น๋ถํฐ ๊ธ์๋ฅผ ์ธ์์๋ end๋ฒ์งธ ๋ฌธ์๊น์ง ์ถ๋ ฅํ๋ค๊ณ ์๊ฐํ๋ฉด ํธํ๋ค.
let sunghoon = 'Sunghoon wanna be a developer.';
sunghoon.slice(0, 8); // 'Sunghoon'
sunghoon.substring(20, 28); // 'developer'
๋จ ๊ธ์๊ฐ ๋ค๋ฅธ ๋งํผ ์ฐจ์ด๋ ์๋๋ฐ ์ฃผ์ํ ์ฐจ์ด์ ์ผ๋ก,
start > end ์ผ๋ ์ถ๋ ฅ
.substring์ ์ธ์์ ์์น๊ฐ ์ด๋ป๊ฒ ๋๋ ์์ ๊ฐ์ด start, ํฐ ๊ฐ์ด end๊ฐ ๋๋ค.
.slice()๋ start๊ฐ์ด end๊ฐ ๋ณด๋ค ํด๋ ๋น ๋ฌธ์์ด์ ์ถ๋ ฅํ๋ค.
๊ฐ์ด ์์ ์ผ๋
.substring()์ ์์๋ฅผ 0์ผ๋ก ์นํํ์ฌ ์ธ์๋ก ์ฌ์ฉํ๋ค.
.slice()์ ์์๋ ๋ฌธ์์ด ๋ค์์ ๋ถํฐ ์ผ๋ค.
let sunghoon = 'Sunghoon wanna be a developer.';
// 1. start > end ์ผ๋ ์ถ๋ ฅ
sunghoon.substring(8, 0) // 'Sunghoon'
sunghoon.slice(8, 0) // ''
// 2. ๊ฐ์ด ์์ ์ผ๋
sunghoon.substring(-10, 29) // ''Sunghoon wanna be a developer'
sunghoon.slice(-10, 29) // 'developer' ์์๋ก ์
๋ 1๋ถํฐ ์ผ๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก ๋ฌธ์์ด์์ ์ซ์๋ฅผ ๋ฐํํ๋ค๋ ๊ฒ์ ๊ฐ์ง๋ง, Number()๋ 10์ง๋ฒ๋ง ์ทจ๊ธํ๋ ๊ฒ์ ๋นํด parseInt()๋ 2์ง๋ฒ, 8์ง๋ฒ, 32์ง๋ฒ ๋ฑ์ ์ทจ๊ธํ๋ค.
์ธ์๊ฐ ์์ผ๋ฉด 10์ง๋ฒ์ผ๋ก ๋ฐํํ๊ณ , ๋๋ฒ์งธ ์ธ์๋ฅผ ์
๋ ฅํ๋ค๋ฉด ํด๋น ์ง์๋ก ๋ฐํํ๋ค.
Number(101) // 101
parseInt(101) // 101
parseInt(101, 2) // 5
์ฝํ๋ฆฟ์ด ์ ํ๋ ค์ ๊ธฐ๋ถ์ด๊ฐ ์ข์๋ค.
์๋์ฝ๋์ ๋ญ๊ฐ ์ต์ํด์ง๊ณ ์๋ ๋๋ ์๋ง ๊ธฐ๋ถ ํ
๋น์จ ๋ค ๋ ์จ๊ฐ ์ ์ ํด์ ์ข์๋ค.
์ค๋ ํ์๋ณด๋ค ๋์๊ฐ์ด๋ ๋ฆ๊ฒ ์ผ์ด๋์ ์์นจ ์ด๋, ์์นจ ๊ณต๋ถ๋ฅผ ๋ชปํ๊ณ ์ฝํ๋ฆฟ์ ๋ค์ด๊ฐ๋ค. ์์นจ์ ๋น์์ ๊ทธ๋
๋ฐ๋ณต๋ฌธ๋ฐ๋ณต๋ฌธ๋ฐ๋ณต๋ฌธ๋ฐ๋ณต๋ฌธ๋ฐ๋ณต๋ฌธ๋ฐ๋ณต๋ฌธ
๋ฐ๋ณต๋ฌธ ๊ณต๋ถ๋ฅผ ํด์ผํ๋ค.
ํ์ด๋์ด ์ด๋์ด์ฃผ๋ฉด ๋๋ ค๊ฐ ์ ๋๋ ๋์ด์ผ์ง ์๊ฒ ๋.
์ค๋ ์ฌ์ค ์์นจ๋ถํฐ ๋ฆ์ ์ ์์ ์ค๋ ์์์ด ์ ์ข์ง๋ ์์๋ค.
๊ทผ๋ฐ ์ฝํ๋ฆฟํ๋ฉด์ ํ์ด๋์ด๋ ํ๊ณ ๊ณต๋ถํ๊ณ ํ๋๊ฒ ์ฌ๋ฐ์ด์ ๋๋ก ๊ธฐ๋ถ ์ข์์ง ใ
ใ
๋จ์ํ ๋
๋ด๊ฐ ๋จ์ํ๋ค๋๊ฑด ์ฌ๋ฌ ๊ณณ์์ ๋๋ผ๊ณ ์์๋๋ฐ ๊ธฐ๋ถ ๋์๋ค๊ฐ๋ ๋ฐฐ๋ถ๋ฅด๋ฉด ๊ธฐ๋ถ ์ข์์ง๋ค๋๊ฐ
์ด๋ฐ ๋จ์ํจ์ ์ ์ด์ฉํด์ ์ฝ๋ฉ์ ์์ผ๋ก๋ ๊ณ์ ์ฆ๊ธธ ์ ์๋ ๋ฐฉํฅ์ผ๋ก ๊ณต๋ถํด์ผ๊ฒ ๋ค.
์์ฆ ๋ค์ด ์กฐ๊ธ ์์ฌ์ด ์ ์ ์กฐ๊ธ ๋ ๋นจ๋ฆฌ ์ฝ๋ฉ ๊ณต๋ถ ์์ํ์ง ๋ชปํ ์ .
๋ฐฉํฉํ ์๊ฐ๋ ๋ด ๋๋ฆ์ ์๋ฏธ๊ฐ ์์๋ค๊ณ ์๊ฐํ์ง๋ง ๊ทธ๋๋ ๊ทธ ์๊ฐ์ด ๋๋ฌด ์๊น๋ค.
๊ทธ๋๋ ๋๋ณด๋ค ๋ฆ๊ฒ ์์ํ๋ ์ฌ๋์ด ์์๊ฑฐ๋ผ๊ณ , ๋ง์ ๋จน์์๋๊ฐ ๊ฐ์ฅ ๋น ๋ฅธ๊ฑฐ๊ณ ์์์ด ๋ฐ์ด๋ผ๋ ์๊ฐ์ผ๋ก ์ฆ๊ธฐ๋ ค ๋
ธ๋ ฅํ๊ณ ์๋ค๐
๊ทธ๋ฆฌ๊ณ ๋ธ๋ก๊ทธ ํฌ์คํ
๋ฐฉํฅ๋ ์กฐ๊ธ ๋ฐ๊ฟ๋ณด๋ ค๊ณ ํ๋๋ฐ,
๋ง์นจ ์ค๋ ์ฝํ๋ฆฟ์ด ํ์ด๋์ด๋ ๋๋ฒ์งธ ๋ง๋จ์ด๊ธฐ๋ ํ๊ณ ๊ฐ์ด ๋ฌธ์ ๋ ์์ฐจ๊ฒ ์ค๋ฌด์คํ๊ฒ ํ๊ณ ํด์ ์นํด์ก๋ค
๋๋ง ๊ทธ๋ฐ๊ฑฐ๋ฉด.. ์ ๋ง ์ฌํ ์ผ์ด์ผ..
์ด๋ฐ ์ ๋ฐ ์ด์ผ๊ธฐํ๋ค๊ฐ ๋ธ๋ก๊ทธ ์ด์ผ๊ธฐ๋ ํ์๋๋ฐ, ๋๋ผ์ ๋๊ฒ ํ์ด๋๋ ๋๋ ๋น์ทํ ๋ฐฉ์์ผ๋ก ํฌ์คํ
์ ํ์
จ์๋ค๋ ๊ฒ.
์ด๋ฐ์์ผ ๋ฐฐ์ด ๋ด์ฉ ์ ๋ฐ์ ์ ์๋ค๊ณ ํ์
จ๋ค.
ํ์ง๋ง ์ ์ ๋ฐฐ์๊ฐ๋ ๋ด์ฉ์ด ๋ง์์ง๊ณ , ๊ทธ์๋ฐ๋ผ ํฌ์คํ
๋ด์ฉ๋ ๋ง์์ ธ์ ๋ฏธ๋ฃจ๋ ์ผ์ด ์ฌ์ฌ์ฐฎ๊ฒ ์ผ์ด๋์
จ๋ค๊ณ .
๊ทธ ์ด์ผ๊ธฐ๋ฅผ ๋ฃ๊ณ ๋ด ๋ฏธ๋๋ค ์ถ์ด์ ํฌ์คํ
๋ฐฉํฅ์ ์กฐ๊ธ ๋ฐ๊พธ๊ธฐ๋ก ํ๋ค.
์ค๋ ๊ณต๋ถํ ๋ด์ฉ์ ์ ๋๋ฐ, ์ฝ๊ฒ ์ฐพ์ ๋ด์ฉ๋ณด๋ค๋ ๊ณต๋ค์ฌ ์ฐพ์๋ฐฐ์ด ๋ด์ฉ ์์ฃผ๋ก ์ ๋ ๊ฒ์ผ๋ก.
๊ณต๋ค์ฌ ์ฐพ์ ๋ด์ฉ์ ๋ง์ฝ ๊น๋จน์ผ๋ฉด ๋ค์ ๊ณต๋ค์ฌ ์ฐพ์์ผํ๋๊น
๋ด์ผ๋ถํฐ ๋ค์ ์ด์ฌํ ํด๋ณด์~~
https://developer.mozilla.org/
https://www.w3schools.com/
https://ko.javascript.info/