자바스크립트 문자열



JavaScript 문자열은 텍스트를 저장하고 조작하는 데 사용됩니다.


JavaScript 문자열

문자열은 "John Doe"와 같은 일련의 문자를 저장할 수 있습니다.

문자열은 따옴표 안에 삽입된 모든 문자일 수 있습니다. 작은따옴표나 큰따옴표를 사용할 수 있습니다:

Instance

var carname = "볼보 XC60";
var carname = 'Volvo XC60';

인덱스 위치를 사용하여 문자열의 각 문자에 액세스할 수 있습니다.

Instance

var 문자 = carname [7];

문자열의 인덱스는 0부터 시작합니다. 즉, 첫 번째 문자 인덱스 값은 [0], 두 번째 문자 인덱스 값은 [1] 등입니다.

문자열에 따옴표를 사용할 수 있습니다.

var Answer = "괜찮습니다";
var Answer = "그 사람은 '조니'라고 불립니다.";
var Answer = '그 사람은 '조니'라고 불립니다';

할 수도 있습니다 따옴표를 사용하려면 문자열 문자에 이스케이프를 추가하세요.

Instance

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body>

<p id="demo"></p>
<script>
var x = 'It\'s alright';
var y = "He is called \"Johnny\"";
document.getElementById("demo").innerHTML = x + "<br>" + y; 
</script>

</body>
</html>

Run Instance»

"Run 온라인 인스턴스를 보려면 인스턴스" 버튼


문자열 길이

내장 속성인 length를 사용하여 문자열 길이를 계산할 수 있습니다. :

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body>

<script>
var txt = "Hello World!";
document.write("<p>" + txt.length + "</p>");
var txt="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
document.write("<p>" + txt.length + "</p>");
</script>

</body>
</html>

인스턴스 실행»

온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요


특수문자

자바스크립트에서는 문자열을 작은따옴표나 큰따옴표로 묶습니다.

이 때문에 다음 예제 JavaScript를 구문 분석할 수 없습니다. x

"우리는 소위 북쪽에서 온 "바이킹"입니다."

"We are the 소위"라는 문자열이 잘립니다.

위 문제를 어떻게 해결하나요? 백슬래시()를 사용하여 "Vikings" 문자열에서 큰따옴표를 다음과 같이 이스케이프할 수 있습니다.

"We are the 소위 "Vikings" from the north."

백슬래시는 이스케이프 문자 입니다. 이스케이프 문자는 특수 문자를 문자열 문자로 변환합니다.

이스케이프 문자()는 아포스트로피, 개행, 따옴표 및 기타 특수 문자를 이스케이프하는 데 사용할 수 있습니다.

다음 표에는 문자열에서 이스케이프 문자를 사용하여 이스케이프할 수 있는 특수 문자가 나열되어 있습니다.

代码输出
'单引号
"双引号
\反斜杠
n换行
r回车
ttab(制表符)
b退格符
f换页符

문자열은 객체가 될 수 있습니다.

일반적으로 JavaScript 문자열은 기본 값이며 문자를 사용하여 생성할 수 있습니다: var firstName = "John"

그러나 새 키워드를 사용하여 문자열을 객체로 정의할 수도 있습니다: var 이름 = 신규 String("John")

Instance

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body>
	
<p id="demo"></p>
<script>
var x = "John";              // x是一个字符串
var y = new String("John");  // y是一个对象
document.getElementById("demo").innerHTML =typeof x + " " + typeof y;
</script>

</body>
</html>

인스턴스 실행»

"인스턴스 실행"을 클릭합니다. 버튼 온라인 예시 보기

NoteString 객체를 생성하지 마세요. 실행 속도가 느려지고 다른 부작용이 있을 수 있습니다.
Note不要创建 String 对象。它会拖慢执行速度,并可能产生其他副作用:

인스턴스

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body>
	
<p id="demo"></p>
<script>
var x = "John";              // x 是字符串
var y = new String("John");  // y 是一个对象
document.getElementById("demo").innerHTML = x===y;
</script>
<p>=== 为绝对相等,即数据类型与值都必须相等。</p>
	
</body>
</html>

인스턴스 실행»

온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요.

=== 절대적으로 동일합니다. 즉, 데이터 유형과 값이 모두 동일합니다. 동일해야 합니다.


문자열 속성 및 메서드

"John"과 같은 기본 문자열 값에는 개체가 아니기 때문에 속성과 메서드가 없습니다.

자바스크립트는 메소드와 속성을 실행할 때 원시 값을 객체로 처리할 수 있기 때문에 원시 값은 자바스크립트 속성과 메소드를 사용할 수 있습니다.

다음 장에서 소개할 문자열 메소드입니다.


문자열 속성

属性描述
constructor返回创建字符串属性的函数
length返回字符串的长度
prototype允许您向对象添加属性和方法

문자열 메서드

Method描述
charAt()返回指定索引位置的字符
charCodeAt()返回指定索引位置字符的 Unicode 值
concat()连接两个或多个字符串,返回连接后的字符串
fromCharCode()将 Unicode 转换为字符串
indexOf()返回字符串中检索指定字符第一次出现的位置
lastIndexOf()返回字符串中检索指定字符最后一次出现的位置
localeCompare()用本地特定的顺序来比较两个字符串
match()找到一个或多个正则表达式的匹配
replace()替换与正则表达式匹配的子串
search()检索与正则表达式相匹配的值
slice()提取字符串的片断,并在新的字符串中返回被提取的部分
split()把字符串分割为子字符串数组
substr()从起始索引号提取字符串中指定数目的字符
substring()提取字符串中两个指定的索引号之间的字符
toLocaleLowerCase()根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射
toLocaleUpperCase()根据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射
toLowerCase()把字符串转换为小写
toString()返回字符串对象值
toUpperCase()把字符串转换为大写
trim()移除字符串首尾空白
valueOf()返回某个字符串对象的原始值