Javascript 문자열 내장객체

Javascript 문자열 내장객체 updated_at: 2024-03-04 15:48

Javascript 내장객체

String

자바스크립트에서 문자열은 한개 이상의 문자로 구성된 것을 의미합니다. "abcd"는 각각 a,b,c,d의 문자들로 구성된 집합인 것입니다. 이러한 집합을 문자열이라고 하며, 문자열은 따옴표('')나 쌍따옴표("")로 묶어서 나타냅니다.예를 들어 10은 숫자지만, "10"은 1과 0으로 구성된 문자열이 되는 것입니다. 또한, "a"와 같이 하나의 문자도 따옴표로 묶어주면 문자열이 됩니다.일반적으로 자바스크립트에서 사용되는 문자열이 String 객체입니다.

String 예제

var str="핸드폰"	
var len=str.length

document.write("문자의 수는 "+len+"입니다.")

<실행결과>
문자의 수는 3입니다.

결과로 3을 반환합니다. 영어는 1byte이고 한글은 2byte입니다. 지금은 문자의 갯수를 나타내지만 한글을 byte로 계산하여 2byte로 인식하면, 결과는 6으로 표시가 될 것입니다. 또한, 자바스크립트 String객체에서는 HTML 태그를 대신할 수 있는 메소드를 제공합니다.

메소드 설명
anchor("라벨") : HTML 앵커를 생성
link("경로") : HTML의 하이퍼링크 생성
big() ~ : 태그를 사용한 것과 같은 결과를 출력
small() ~ : 태그를 사용한 것과 같은 결과를 출력
blink() ~ : 태그를 사용한 것과 같이 깜박거리는 문자열 출력
bold() ~ : 태그를 사용한 것과 같이 문자열을 볼드체로 출력
italics() ~ 태그를 사용한 것과 같이 문자열을 이텔릭체로 출력
fontcolor("색") : 문자열의 색을 설정
fontsize("크기") : 문자열의 크기를 설정
fixed() ~ : 태그처럼 문자열이 고정된 높이를 갖도록 출력
strike() ~ : 태그를 사용한 것과 같이 문자열의 중앙에 선을 출력
sub() ~ : 태그를 사용한 것과 같이 문자열을 아래첨자 형태로 출력
sup() ~ : 태그를 사용한 것과 같이 문자열을 윗 첨자 형태로 출력

다음의 예제로 확인합니다.

var str="핸드폰"
document.write(str.anchor("name01")+"<br>");
document.write(str.link("https://www.onstory.fun")+"<br>");
document.write(str.big()+"<br>");
document.write(str.small()+"<br>");
document.write(str.blink()+"<br>");
document.write(str.bold()+"<br>");
document.write(str.italics()+"<br>");
document.write(str.fontcolor("red")+"<br>");
document.write(str.fontsize("5")+"<br>");
document.write(str.fixed()+"<br>");
document.write(str.strike()+"<br>");
document.write(str.sub()+"<br>");
document.write(str.sup()+"<br>");

< 실행결과 ><A target="_blank" class="con_link"  id="name01"  name="name01">핸드폰</A>
<A target="_blank" class="con_link"  href="https://www.onstory.fun" >핸드폰</A>
핸드폰핸드폰핸드폰핸드폰<EM>핸드폰</EM>핸드폰핸드폰핸드폰핸드폰핸드폰핸드폰

결과를 Internet Explorer에서 확인한다면, blink()로 설정된 문자열은 설정이 적용되지 않습니다. blink속성은 Internet Explorer에서는 지원하지 않기 때문입니다. "객체.메소드"의 원리를 이해했다면 어렵지 않을것입니다.이번에는 String 객체로 문자열을 다루는 방법에 대하여 알아보겠습니다.다음은 해당 메소드와 그에 관한 설명입니다.

charAt(index) 메소드

지정된 위치의 문자를 반환합니다.

var str = 'JavaScript String';
str.charAt(0); // J
str.charAt(4); // S

charCodeAt([index])

지정된 위치에 있는 문자의 코드(ISO Latin-1)값의 수를 반환합니다.

str.charCodeAt(3); // a의  ISO Latin-1의 값 : 97

concat("문자열1, 문자열2,...문자열n")

문자열을 연결하여 새로운 문자열을 반환합니다.

var str1 = "JavaScript";
var str2 = "String";
str1.concat(str2); // JavaScriptString

indexOf("string")

문자열의 왼쪽부터 검사하여 처음으로 나타나는 string을 반환합니다.

var str = "JavaScript String";
str.indexOf("v"); // 2

lastIndexOf("string")

문자열의 오른쪽부터 검사하여 처음으로 나타나는 string을 반환합니다.

var str = "JavaScript String";
str.lastIndexOf("r"); // 13

match(regexp)

인수로 전달된 문자열과 일치하는 것을 찾습니다.

replace

전달된 문자열을 새로운 문자열로 대치합니다.

단순 문자열 변경

replace('a', 'b') 

정규식 문자열 변경

replace(regexp, newSubstr)

var re=/Java/gi;
var str = JavaScript;
str.replace(re, "자바"); // 자바Script
replace(/a/gi, 'b')
  • g : 발생할 모든 pattern에 대한 전역 검색
  • i : 대/소문자 구분 안함
  • m : 여러 줄 검색(여기서는 사용하지 않았다. 원한다면 하자.)

html 테그 제거 예제

function stripHTMLtag(string) {
  var objStrip = new RegExp();
  objStrip = /[<][^>]*[>]/gi;
  return string.replace(objStrip, "");
}

search(regexp)

지정된 문자열이 포함되어 있는지 검색합니다. 없으면 0, 있으면 1

var re=/Python/gi;
var str = JavaScript;
str.search(re); // 0

slice(start_index, end_index)

문자열의 일부를 추출하여 배열을 만듭니다.

var str = JavaScript;
str.slice(3,8); // aScri

substring(index1, index2)

지정된 위치에 있는 문자열 앞부분을 반환합니다.

var str = JavaScript;
str1.substring(2,6); // vaSc

substr(start_index, length)

@deprecated
문자열의 지정된 개수 만큼 문자를 반환합니다.

var str = JavaScript;
str.substr(2,6); // vaScri

slipt(separator, limit)

문자열을 지정된 인수로 분리합니다.

var str = JavaScript;
str.split("v",6); // Ja,aScript

toLowCase()

문자열을 소문자로 변환합니다.

var str = 'JAVASCRIPT';
str.toLowerCase(); // javascript

toUpperCase()

문자열을 대문자로 변환합니다.

var str = 'javascript';
str.toUpperCase(); // JAVASCRIPT
평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글


좀더 많은 자료가 필요할듯 하네요