ํด๋น ํฌ์คํ
์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์
๋๋ค.
์์
์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค.
ํ์ค ๋ด์ฅ ๊ฐ์ฒด์ ํ์ฅ
ํ์ค ๋ด์ฅ ๊ฐ์ฒด(Standard Built-in Object)๋ ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ์ง๊ณ ์๋ ๊ฐ์ฒด๋ค์ ์๋ฏธํ๋ค.
๋ด์ฅ ๊ฐ์ฒด๊ฐ ์ค์ํ ์ด์ ๋ ํ๋ก๊ทธ๋๋ฐ์ ํ๋๋ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ํ ๋๊ตฌ๋ค์ด๊ธฐ ๋๋ฌธ์๋ค. ๊ฒฐ๊ตญ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๋ ๊ฒ์ ์ธ์ด์ ํธ์คํธ ํ๊ฒฝ์ ์ ๊ณตํ๋ ๊ธฐ๋ฅ๋ค์ ํตํด์ ์๋ก์ด ์ํํธ์จ์ด๋ฅผ ๋ง๋ค์ด๋ด๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ด์ฅ ๊ฐ์ฒด์ ๋ํ ์ดํด๋ ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ณธ์ด๋ผ๊ณ ํ ์ ์๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ ์๋์ ๊ฐ์ ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
- Object
- Function
- Array
- String
- Boolean
- Number
- Math
- Date
- RegExp
์ธ์ด์์ฒด๊ฐ ์ ๊ณตํ๋ ๊ฐ์ฒด๋ ์์ ๊ฐ๋ค. ํ์ง๋ง ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ๋์ํ๋ ํธ์คํธ ํ๊ฒฝ์ด ์ ๊ณตํ๋ API๋ ์ด๊ฒ๋ณด๋ค ๋ ๋ง๊ธฐ ๋๋ฌธ์, ์ด๊ฒ์ ํจ๊ป ์ด์ฉํ์ฌ ์ฐ๋ฆฌ๊ฐ ์ํํธ์จ์ด๋ฅผ ๋ง๋ค๊ฒ ๋๋ ๊ฒ์ด๋ค.
์ด์ค ์ฐ๋ฆฌ๊ฐ ํ์ํ ๊ฐ์ฒด๊ฐ ์๋ค๋ฉด ์ฐ๋ฆฌ๊ฐ ์ง์ ๋ง๋ค๊ณ ์ฌ์ฉํ ์ ์๋ค. ์ด๋ฌํ ๊ฒ์ ์ฌ์ฉ์ ์ ์ ๊ฐ์ฒด๋ผ๊ณ ํ๋ค.
์ฐ๋ฆฌ๋ ์ด ๋๊ฐ์ง(๋ด์ฅ๊ฐ์ฒด, ์ฌ์ฉ์ ์ ์๊ฐ์ฒด)๋ฅผ ์ด์ง ์์ด ์ฌ์ฉํ ์๊ฐ ์๋ค. ์ด๋ ์ฅ์ ์ ํ๋ฒ ์ดํด๋ณด๋๋ก ํ์.
๋ฐฐ์ด์ ํ์ฅ
๋ฐฐ์ด์ ํ์ฅํด๋ณด์. ์๋ ์ฝ๋๋ ๋ฐฐ์ด์์ ํน์ ํ ๊ฐ์ ๋๋คํ๊ฒ ์ถ์ถํ๋ ์ฝ๋๋ค.
<!DOCTYPE html>
<html>
<head>
<title>๋ฐฐ์ด์ ํ์ฅ</title>
</head>
<body>
<script type="text/javascript">
var arr = new Array('seoul','new york','busan','hahaha','my house');
function getRandom_Array(date){
var index = Math.floor(date.length*Math.random()); //floor๋ ์์์ ์ ์ ๊ฑฐํ๋ API
return date[index];
}
console.log(getRandom_Array(arr));//ํจ์ ํธ์ถ ์ ์ธ์๋ก arr๋ฅผ ์ค.
</script>
</body>
</html>
์์ ๊ฐ์ด ์ฝ๋๋ฅผ ์งค ์๋ ์์ง๋ง, ํ๋กํ ํ์
์ ์ด์ฉํ๋ฉด ๋ ์ธ๋ จ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฝ๋๋ฅผ ์งค ์๊ฐ ์๋ค.
์ด ํจ์๋ฅผ ๋ฐฐ์ด ๊ฐ์ฒด์ ํฌํจ์ํค๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ฌ ๋ง์น ๋ฐฐ์ด์ ๋ด์ฅ๋ ๋ฉ์๋ ์ธ๊ฒ ์ฒ๋ผ ์์ ๊ธฐ๋ฅ์ ์ฌ์ฉํด๋ณด์.
<script>
Array.prototype.rand = function(){
var index = Math.floor(this.length*Math.random());
return this[index];
}
var arr = new Array('seoul','new york','ladarkh','pusan', 'Tsukuba');
console.log(arr.rand());
</script>
๋ฉ์๋ ์ด๋ฆ๋ ์งง์์ง๊ฒ ๋๊ณ , ์ฝ๋๋ ๋งค์ฐ ํจ์จ์ ์ด ๋๋ค.(๊ฐ๋
์ฑ์ด ๋์์ง)
๋๋ค์ด๋ผ๋ ๊ฒ์ ์ถ๊ฐํ๋ ๊ฒ์ ํตํด ๋ฐฐ์ด๊ฐ์ฒด๊ฐ ๋ง๋ค์ด์ง๋ ์ํ(Array), ๋ฐฐ์ด๊ฐ์ฒด์ ์ํ์ ๋๋ค์ด๋ผ๋ ๋ฉ์๋๋ฅผ ์ถ๊ฐํ๊ฒ ๋๋ ๊ฒ์ด๋ค.
์ ์ฝ๋์์ this๊ฐ ๊ฐ๋ฅดํค๋ ๊ฒ์ Array์์ฒด์ด๋ค.