# ๋ฌธ์์ด(String)
๋ฌธ์์ด์ ๋ณ์์ ์ฌ๋ฌ ํ์ ์ค ํ๋์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์คํธ๋ง์ด๋ผ๊ณ ๋ ๋ถ๋ฅด๋ฉฐ ์๋์ ๊ฐ์ด ์ ์ธํฉ๋๋ค.
var a = 'hello';
์ ์ฝ๋๋ a
๋ผ๋ ๋ณ์์ hello
๋ผ๋ ๋ฌธ์์ด์ ํ ๋นํ ์ฝ๋์
๋๋ค. ๋ฌธ์์ด์ ์ด์ ๊ฐ์ด ์์ ๋ฐ์ดํ(') ๋๋ ํฐ ๋ฐ์ดํ(")๋ฅผ ์ด์ฉํ์ฌ ์ ์ํ ์ ์์ต๋๋ค.
# ์ซ์์์ ๊ตฌ๋ถ
์๋ฐ์คํฌ๋ฆฝํธ๋ ์ฝ๋๋ฅผ ์คํํ๋ ์์ ์ ๋ณ์์ ํ์ ์ ๊ฒฐ์ ํ๋ ์ธ์ด์ ๋๋ค. ์ด๋ฌํ ํน์ง์ด ์ด์ฌ์๋ค์๊ฒ๋ ํธํ์ง๋ง ์๋์ ๊ฐ์ด ํ์ ์ ํท๊ฐ๋ฆฌ๊ฒ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๊น๋๋ค.
var a = 10;
var b = '10';
console.log(a); // 10
console.log(b); // 10
์ ์ฝ๋์์ ๋ณ์ a
๋ ์ซ์๊ณ ๋ณ์ b
๋ ๋ฌธ์์ด์
๋๋ค. ์ฝ์ ๋ก๊ทธ ์ฝ๋๋ฅผ ์ด์ฉํ์ฌ ์ฝ์์ ๋ณ์์ ๊ฐ์ ์ถ๋ ฅํด๋ณด๋ฉด ์ก์์ผ๋ก๋ ๊ตฌ๋ถํ๊ธฐ๊ฐ ์ด๋ ต๋ค๋ ์ฌ์ค์ ์ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์ typeof
๋ฅผ ์ด์ฉํ์ฌ ๋ณ์์ ํ์
์ ํ์ธํ ์๋ ์๊ฒ ์ง๋ง ์ค๋ฌด ๊ด์ ์์๋ ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
console.log(a.length); // undefined
console.log(b.length); // 2
์ฌ๊ธฐ์ length
๋ผ๋ ์์ฝ์ด๋ ์๋ฐ์คํฌ๋ฆฝํธ์์ ๋ณ์์ ํ์
์ ๋ฐ๋ผ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์
๋๋ค. length๋ ๋ฌธ์์ด, ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ์ซ์ ํํ๋ก ํ์ธํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ b
๋ ๋ฌธ์์ด์ด๊ณ a
๋ ์ซ์์์ ์ถ์ธกํ ์๊ฐ ์์ต๋๋ค.
์์ ๊ฐ์ด ํ์ ์ ๋ฐ๋ผ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋๋ ์์ฝ์ด ๋ฐ ๊ธฐ๋ฅ๋ค์ ์๋ฐ์คํฌ๋ฆฝํธ ๋ด์ฅ ํจ์(JavaScript Built-in API / JavaScript Native API)๋ผ๊ณ ํฉ๋๋ค. ๋ด์ฅ ํจ์์ ๋ํด์๋ prototype์์ ์์ธํ ์ค๋ช ํ๊ฒ ์ต๋๋ค.