๐ JavaScript
๐ฅ๏ธ String ๊ฐ์ฒด
์ค๋์ ์ ๋ฒ ํฌ์คํ ์ ์ด์ด ์๋ฐ์คํฌ๋ฆฝํธ ๋ฌธ์์ด ๊ฐ์ฒด(String Object)์ ๋ฉ์๋์ ์์ฑ์ ๋ํด ์์๋ณผ๊ฒ์.
์ฃผ์ํ ์ !
๋ฉ์๋๋ฅผ ์ฌ์ฉํ ๋ ์ธ๋ฑ์ค๊ฐ์ ๋งค๊ฐ๋ณ์๋ก ์ฌ์ฉํ ๋๊ฐ ์๋๋ฐ
์ธ๋ฑ์ค๊ฐ์ 0๋ถํฐ ์์ํ๋ฉฐ, ๋์ด์ฐ๊ธฐ ํฌํจ์ ๋๋ค.
โ
โ 1. String ๊ฐ์ฒด์ ๋ฉ์๋ ๋ฐ ์์ฑ ํ ๋์ ๋ณด๊ธฐ 2
โ
์ข
๋ฅ
|
๊ธฐ๋ฅ
|
split("๋ฌธ์")
|
์ง์ ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋๋์ด ๋ฐฐ์ด์ ์ ์ฅํ์ฌ ๋ฐํ let str = "amazingkwebkstudy"; str.split("k"); // ๋ฐฐ์ด ํ์์ผ๋ก ๋ฐํ arr = ["amazing", "web", "study"] |
toLowerCase()
|
๋ฌธ์์ด์์ ์๋ฌธ ๋๋ฌธ์๋ฅผ ๋ชจ๋ ์๋ฌธ์๋ก ๋ณํ let str = "Amazing Web Study"; str.toLowerCase(str); // "amazing web study" ๋ฐํ |
toUpperCase() |
๋ฌธ์์ด์์ ์๋ฌธ ์๋ฌธ์๋ฅผ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ณํ let str = "Amazing Web Study"; str.toUpperCase(str); // "AMAZING WEB STUDY" ๋ฐํ |
length
|
๋ฌธ์์ด์์ ๋ฌธ์์ ๊ฐ์๋ฅผ ๋ฐํ let str = "hello welcome"; str.length() // 13 ๋ฐํ |
concat("์๋ก์ด ๋ฌธ์") |
๋ฌธ์์ด์ ์๋ก์ด ๋ฌธ์์ด์ ๊ฒฐํฉ let str = "hello"; str.concat("web"); // "helloweb" ๋ฐํ |
charCodeAt(index) |
๋ฌธ์์ด index์ ํด๋น ๋ฌธ์์ ์์คํค ์ฝ๋๊ฐ์ ๋ฐํ let str = "ABC"; str.charCodeAt(0); // A์ ์์คํค์ฝ๋๊ฐ์ธ 65 ๋ฐํ |
from CharCode(์์คํค์ฝ๋ ๊ฐ)
|
์์คํค ์ฝ๋๊ฐ์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ๋ฐํ. String.fromCharCode(65); // "A" ๋ฐํ |
trim()
|
๋ฌธ์์ ์ ๋๋ ๋ค์ ๊ณต๋ฐฑ ๋ฌธ์์ด์ ์ญ์ str = " hello "; str.trin(); // "hello" ๋ฐํ |
โ
[ ์์ ]
<script>
let t = "Hello Thank you good luck to you";
document.write(t.toLowerCase(), "<br>");
// ์๋ฌธ์๊ฐ ๋ชจ๋ ์๋ฌธ์๋ก ์นํ๋จ => "hello thank you good luck to you"
document.write(t.toUpperCase(), "<br>");
// ์๋ฌธ์๊ฐ ๋ชจ๋ ๋๋ฌธ์๋ก ์นํ๋จ => "HELLO THANK YOU GOOD LUCK TO YOU"
document.write(t.length(), "<br>");
// ๋ฌธ์์ด์ ๋ฌธ์ ์ด ๊ฐ์๋ฅผ ๋ฐํ(๊ณต๋ฐฑ๋ ๋ฌธ์๋ก ์ทจ๊ธ) => 32
let s = t.split(" ");
// ๊ณต๋ฐฑ๋ฌธ์ ๊ธฐ์ค์ผ๋ก ๋ฌธ์๋ฅผ ๋ถ๋ฆฌํด์ ๋ฐฐ์ด์ ์ ์ฅ๋จ
document.write(s[0], "<br>"); // s์ ์ธ๋ฑ์ค 0์ ์ ์ฅ๋ ๋ฌธ์์ด ์ถ๋ ฅ => "Hello"
document.write(s[4], "<br>"); // s์ ์ธ๋ฑ์ค 4์ ์ ์ฅ๋ ๋ฌธ์์ด ์ถ๋ ฅ => "luck"
document.write(t.indexOf("you", 16), "<br>");
// ์ธ๋ฑ์ค 16 ์์น๋ก๋ถํฐ ๊ฐ์ฅ ๋จผ์ ๋ฐ๊ฒฌํ "you"์ ์ธ๋ฑ์ค๊ฐ ๋ฐํ => 29
let str = "A";
let t = str.charCodeAt(0);
// ๋ณ์์ ์ ์ฅ๋ ๋ฌธ์์ด ์ค 0๋ฒ ์ธ๋ฑ์ค์ ๋ฌธ์ "A"์ ์์คํค์ฝ๋๊ฐ์ ๋ฐํ
document.write(t, "<br>");
// "A"์ ์์คํค์ฝ๋๊ฐ 65 ์ถ๋ ฅ
document.write(String.fromCharCode(65), "<br>");
// ์ฝ๋๊ฐ 65์ ํด๋นํ๋ ๋ฌธ์ ๋ฐํ
</script>
์ถ์ฒ: (์ด์ง์คํผ๋ธ๋ฆฌ์ฑ) ์๋ฐ์คํฌ๋ฆฝํธ + ์ ์ด์ฟผ๋ฆฌ ์ ๋ฌธ( p.107)
1-1. split()
split("๊ตฌ๋ถ ๋ฌธ์") : ๊ตฌ๋ถ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋๋์ด ๋ฐฐ์ด์ ์ ์ฅํด์ ๋ฐํ
์๋ ์ฝ๋๋ ๋ฌธ์์ด "hello my friend"๋ฅผ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๋ถํ ํ์ฌ ๋ฐฐ์ด์ ์ ์ฅํ ํ, ํด๋น ๋ฐฐ์ด์ ์ฝ์์ ์ถ๋ ฅ
<script>
let t = "hello my friend";
let arr = t.split(" "); // ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๋ถํ ํ์ฌ ๋ฐฐ์ด๋ก ์ ์ฅ
console.log(arr); // ๋ฐฐ์ด ์ถ๋ ฅ ๊ฒฐ๊ณผ ["hello", "my", "friend"]
</script>
1-2. toLowerCase()
toLowerCase() : ๋ฌธ์์ด์์ ์๋ฌธ ๋๋ฌธ์๋ฅผ ๋ชจ๋ ์๋ฌธ์๋ก ๋ณํ
<script>
let t = "Hello Thank You";
document.write(t.toLowerCase());
// ๋ชจ๋ ์๋ฌธ์๋ก ์นํ
// hello thank you
</script>
1-3. toUpperCase()
toUpperCase() : ๋ฌธ์์ด์์ ์๋ฌธ ์๋ฌธ์๋ฅผ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ณํ
<script>
let t = "Hello Thank You";
document.write(t.toLowerCase());
// ๋ฌธ์์ด์ ๋ชจ๋ ๋๋ฌธ์๋ก ์นํ
// HELLO THANK YOU
</script>
1-4. length
length : ๋ฌธ์์ด์์ ๋ฌธ์์ ๊ฐ์ ๋ฐํ
<script>
let t = "javascript is fun";
document.write(t.replace("you", "me"));
// ๋ฌธ์์ด์์ ๋ฌธ์์ ๊ฐ์ ๋ฐํ, ์ด ๋ ๊ณต๋ฐฑ๋ฌธ์๋ ํฌํจ๋จ.
// 17
</script>
1-5. concat()
concat("์๋ก์ด ๋ฌธ์") : ๋ฌธ์์ด์ ์๋ก์ด ๋ฌธ์์ด์ ๊ฒฐํฉ
<script>
let t = "java";
document.write(t.concat("script"));
// ๋ฌธ์์ด์ ์๋ก์ด ๋ฌธ์์ด์ ๊ฒฐํฉ
// javascript
</script>
1-6. charCodeAt()
charCodeAt(index) : ๋ฌธ์์ด index์ ํด๋น ๋ฌธ์์ ์์คํค ์ฝ๋ ๊ฐ์ ๋ฐํ
<script>
let str = "ABC";
document.write(str.charCodeAt(0)); // 0๋ฒ ์ธ๋ฑ์ค์ ๋ด๊ธด A์ ์์คํค์ฝ๋๊ฐ ๋ฐํ
// 65
</script>
1-7. fromCharCode()
fromCharCode(์์คํค ์ฝ๋ ๊ฐ) : ์์คํค ์ฝ๋๊ฐ์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ๋ฐํ
<script
document.write(String.fromCharCode(65));
// ์์คํค์ฝ๋ 65์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ๋ฐํ
// A
</script>
1-8. trim()
trim()
<script>
let t = " hello ";
document.write(t.trim());
// ๋ฌธ์์ด์ ์ ๋ค ๊ณต๋ฐฑ์ ์ ๊ฑฐํ ๋ฌธ์์ด ๋ฐํ
// hello
</script>
โ 2. ์ฌ์ฉ์๋ก๋ถํฐ ์ ๋ ฅ๋ฐ์ ์ด๋ฉ์ผ์ ์ ํจ์ฑ ๊ฒ์ฌํ๋ ํ๋ก๊ทธ๋จ ์ง๊ธฐ
2-1. ๋ฌธ์
์์์ ๋ฐฐ์ด ๋ฌธ์์ด ๊ฐ์ฒด ๋ฉ์๋๋ฅผ ์ด์ฉํด์ ์ฌ์ฉ์๋ก๋ถํฐ ์ ๋ ฅ ๋ฐ์ ์ด๋ฉ์ผ์ ์ ํจ์ฑ์ ๊ฒ์ฌํ๋ ํ๋ก๊ทธ๋จ ์ง๊ธฐ
- ์ฌ์ฉ์๋ก๋ถํฐ ์ด๋ฉ์ผ์ฃผ์๋ฅผ ์ ๋ ฅ๋ฐ๋๋ค.
- ๋ฉ์ผ์ฃผ์์ @๊ฐ ํฌํจ๋์ด ์๊ณ , ".co.kr" ๋๋".com" ๋๋ ".net" ๋๋ ".or.kr" ๋๋ ".go.kr" ์ค์ ํ ๊ฐ์ง ๋ฌธ์์ด์ด ํฌํจ๋์ด ์์ผ๋ฉด ์ ํจํ ์ด๋ฉ์ผ์ด๋ฏ๋ก ํ๋ฉด์ ์ ๋ ฅ๋ฐ์ ์ด๋ฉ์ผ ์ฃผ์๋ฅผ ์ถ๋ ฅํ๋ค.
- ๋ฉ์ผ ์ฃผ์์ ์์ ๋ฌธ์์ด์ด ํฌํจ๋์ด ์์ง ์์ผ๋ฉด "์ด๋ฉ์ผ ํ์์ด ์๋ชป๋์์ต๋๋ค." ๋ผ๊ณ ๊ฒฝ๊ณ ์ฐฝ์ ๋์ด๋ค(alert)
2-2. ํ์ด
<script>
var userEmail = prompt("Enter your Email address");
var arrUrl = [".com", ".co.kr", ".net", ".or.kr", ".go.kr"];
var check1 = false; // @ ํฌํจ ์ ๋ฌด ์ฒดํฌ
var check2 = false; // Url ํฌํจ ์ ๋ฌด ์ฒดํฌ
if (userEmail.indexOf("@")>0) {check1=true;}
// ์ด๋ฉ์ผ์ด @๋ฅผ ํฌํจํ๊ณ ์์ผ๋ฉด check1์ true๋ฅผ ์ ์ฅ
for (var i=0; i < arrUrl.length; i++) {
if(userEmail.indexOf(arrUrl[i])>0) {
check2 = true;
}
}
// ์
๋ ฅํ ์ด๋ฉ์ผ๊ณผ arrUrl์ ๋จ์ด๋ฅผ ํ๋์ฉ ๋น๊ตํด์
// 1๊ฐ๋ผ๋ ์ผ์นํ๋ฉด check2์ true ์ ์ฅ
if (check1&&check2) {
document.write(userEmail);
} else {
document.write("์ด๋ฉ์ผ ํ์์ด ์๋ชป๋์์ต๋๋ค.");
}
</script>