//
//
1.请不要把字符串创建为对象。它会拖慢执行速度。
new 关键字使代码复杂化。也可能产生一些意想不到的结果:
当使用 == 相等运算符时,相等字符串是相等的:
2.当使用 === 运算符时,相等字符串是不相等的,因为 === 运算符需要类型和值同时相等。
字符串的处理
1.字符串的长度length
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
答案:26
2.查找字符串中的字符串
indexOf() 方法返回字符串中指定文本首次出现的索引(位置):
<p id="demo4"></p>
<script>
var str = "A B C D E F A china hello cool";
var pos = str.indexOf("hello");
document.getElementById("demo4").innerHTML = pos;
</script>
答案:20
<p id="demo4"></p>
<script>
var str = "A B C D E F A china hello cool";
var p1 = str.indexOf("A");
// indexOf() 方法接受第二个参数作为搜索的起始位置:
var p2 = str.indexOf("A",2);
// 答案分别为:0 12
document.getElementById("demo4").innerHTML =p1 +" "+ p2 ;
</script>
lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引:
同理lastIndexOf() 在后面在加上一个参数的时候,是从该位置由尾向头搜素
<p id="demo4"></p>
<script>
var str = "A B C D E F A china hello cool";
var pos = str.lastIndexOf("A");
document.getElementById("demo4").innerHTML = pos;
</script>
答案:12
注意:如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1。
3.检索字符串中的字符串
search() 方法搜索特定值的字符串,并返回匹配的位置:
<p id="demo5"></p>
<script>
var str = "A B C D E F A china hello cool";
var pos = str.search("hello");
document.getElementById("demo5").innerHTML = pos;
</script>
答案:20 (与indexOf()方法所获得的结果是相同的)
总:两种方法,indexOf() 与 search(),是相等的。
这两种方法是不相等的。区别在于:
search() 方法无法设置第二个开始位置参数。
indexOf() 方法无法设置更强大的搜索值(正则表达式)。
4.提取部分字符串
有三种提取部分字符串的方法:
slice(start, end)
substring(start, end)
substr(start, length)
<p id="demo6"></p>
<script>
var str = "0123456789 hello world!";
var res = str.slice(0,5);
document.getElementById("demo6").innerHTML = res;
</script>
答案:01234
lice() 提取字符串的某个部分,并在新字符串中返回被提取的部分
<p id="demo6"></p>
<script>
var str = "0123456789 hello world!";
var res = str.slice(-6,-1);
document.getElementById("demo6").innerHTML = res;
</script>
答案:world
如果某个参数为负,则从字符串的结尾开始计数
<p id="demo6"></p>
<script>
var str = "0123456789 hello world!";
var res = str.slice(9);
document.getElementById("demo6").innerHTML = res;