JavaScript 字符串详解

别说谁变了你拦得住时间么 提交于 2020-01-01 00:42:36

1.JavaScript 字符串

JavaScript 字符串用于存储和处理文本。

2.JavaScript 字符串
字符串可以存储一系列字符,如 “John Doe”。

字符串可以是插入到引号中的任何字符。
使用单引号或双引号:

var carname = "Volvo XC60";//双引号
var carname = 'Volvo XC60';//单引号

使用索引位置来访问字符串中的每个字符:

var character = carname[7];

字符串的索引从 0 开始,这意味着第一个字符索引值为 [0],第二个为 [1], 以此类推。

可以在字符串中使用引号,字符串中的引号不要与字符串的引号相同:(引号的嵌套问题

var answer = "It's alright";
var answer = "He is called 'Johnny'";
var answer = 'He is called "Johnny"';

也可以在字符串添加转义字符来使用引号:

var answer = 'It\'s alright';
var answer = "He is called \"Johnny\"";

实例总结:

<script>
var carname1="Volvo XC60";
var carname2='Volvo XC60';
var answer1="It's alright";
var answer2="He is called 'Johnny'";
var answer3='He is called "Johnny"';
var answer4='It\'s alright';
var answer5="He is called \"Johnny\"";
document.write(carname1 + "<br>")
document.write(carname2 + "<br>")
document.write(answer1 + "<br>")
document.write(answer2 + "<br>")
document.write(answer3 + "<br>")
document.write(answer4 + "<br>")
document.write(answer5 + "<br>")
</script>

在这里插入图片描述

3.字符串长度
可以使用内置属性 length 来计算字符串的长度:

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

在这里插入图片描述

4.特殊字符
在 JavaScript 中,字符串写在单引号或双引号中。

因为这样,以下实例 JavaScript 无法解析(导致没有输出结果):(引号的嵌套问题

<script>
 str1 = "We are the so-called "Vikings" from the north." 
document.write(str1)
</script>

在这里插入图片描述

如何解决以上的问题呢?可以使用反斜杠 () 来转义 “Vikings” 字符串中的双引号,如下:

<script>
 str1 =  "We are the so-called \"Vikings\" from the north." 
document.write(str1)
</script>

在这里插入图片描述

5.转义字符
反斜杠是一个转义字符。 转义字符将特殊字符转换为字符串字符:

转义字符 () 可以用于转义撇号,换行,引号,等其他特殊字符。

在这里插入图片描述

6.字符串可以是对象
通常, JavaScript 字符串是原始值,可以使用字符创建: var firstName = “John”

但我们也可以使用 new 关键字将字符串定义为一个对象: var firstName = new String(“John”)

<script>
var x = "John";              // x是一个字符串
var y = new String("John");  // y是一个对象
document.getElementById("demo").innerHTML =typeof x + " " + typeof y;
</script>

在这里插入图片描述

!!!不要创建 String 对象。它会拖慢执行速度,并可能产生其他副作用!!!
以下例子说明创建的String 对象跟字符串的本质区别:(虽然看起来一样。但这就是问题所在

<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>

在这里插入图片描述

7.字符串属性和方法
原始值字符串,如 “John”, 没有属性和方法(因为他们不是对象)。

原始值可以使用 JavaScript 的属性和方法,因为 JavaScript 在执行方法和属性时可以把原始值当作对象。

字符串属性
在这里插入图片描述

字符串方法
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!