JavaScript String 字符串方法

JavaScript String 字符串方法汇总

1.str.indexOf() 方法查找字符串中的字符串  返回   字符串中指定文本首次出现的索引(位置)

JavaScript 从零计算位置。0 是字符串中的第一个位置,1 是第二个,2 是第三个 ...

无法设置更强大的搜索值(正则表达式)

var str = "The full name of China is the People‘s Republic of China.";
var pos = str.indexOf("China");document.getElementById("demo").innerHTML = pos;

2.str.lastIndexOf() 方法向后进行检索(从尾到头)  返回指定文本在字符串中最后一次出现的索引

var str = "The full name of China is the People‘s Republic of China.";
 var pos = str.lastIndexOf("China");
 document.getElementById("demo").innerHTML = pos;

3.str.search() 方法检索字符串中的字符串   搜索特定值的字符串,并返回匹配的位置

     无法设置第二个开始位置参数

var str = "The full name of China is the People‘s Republic of China.";
var pos = str.search("China");
document.getElementById("demo").innerHTML = pos;

4.str提取部分字符串

(1)     slice(startend)

(2)     substring(startend)

(3)     substr(startlength)

(1) slice() 方法

var str="Hello World";
var str1=str.slice(2); //如果只有一个参数,则提取开始下标到结尾处的所有字符串
var str2=str.slice(2,7); //两个参数,提取下标为2,到下标为7但不包含下标为7的字符串
var str3=str.slice(-7,-2); //如果是负数,-1为字符串的最后一个字符。提取从下标-7开始到下标-2但不包含下标-2的字符串。前一个数要小于后一个数,否则返回空字符串

console.log(str1); //llo World
console.log(str2); //llo W
console.log(str3); //o Wor

(2)substring() 方法 

substring() 类似于 slice()

不同之处在于 substring() 无法接受负的索引

如果省略第二个参数,则该 substring() 将裁剪字符串的剩余部分。

var str="Hello World";
var str1=str.substring(2)
var str2=str.substring(2,2);
var str3=str.substring(2,7);
console.log(str1); //llo World
console.log(str2); //如果两个参数相等,返回长度为0的空串
console.log(str3); //llo W

(3)substr() 方法

substr() 类似于 slice()

不同之处在于第二个参数规定被提取部分的长度

如果首个参数为负,则从字符串的结尾计算位置

var str = "Apple, Banana, Mango";
var res = str.substr(7,6);

结果:      Banana

5.str.replace() 方法用另一个值替换在字符串中指定的值 替换字符串内容

var str="hello WORLD";
var reg=/o/ig; //o为要替换的关键字,不能加引号,否则替换不生效,i忽略大小写,g表示全局查找。
var str1=str.replace(reg,"**")
console.log(str1); //hell** W**RLD

6.str.toLowerCase(): 把字符串转为小写,返回新的字符串

var str="Hello World";
var str1=str.toLowerCase();
console.log(str); //Hello World
console.log(str1); //hello world

7.str.toUpperCase(): 把字符串转为大写,返回新的字符串

var str="hello world";
var str1=str.toUpperCase();
console.log(str); //hello world
console.log(str1); //HELLO WORLD

8.str.charAt(): 返回指定下标位置的字符。如果index不在0-str.length(不包含str.length)之间,返回空字符串

var str="hello world";
var str1=str.charAt(6);
console.log(str1); 

9.str.charCodeAt(): 返回指定下标位置的字符的unicode编码,这个返回值是 0 - 65535 之间的整数

var str="hello world";
var str1=str.charCodeAt(1);
var str2=str.charCodeAt(-2); //NaN
console.log(str1); //101

10.str.split(): 把字符串分割成字符串数组

var str="AA BB CC DD";
var string1="1:2:3:4:5";
var str1=str.split("");//如果把空字符串 ("")用作分割符,那么字符串的每个字符之间都会被分割
var str2=str.split(" "); //以空格为分隔符
var str3=str.split("",4); //4指定返回数组的最大长度
var str4=string1.split(":");
console.log(str1); // ["A", "A", " ", "B", "B", " ", "C", "C", " ", "D", "D"]
console.log(str2); //["AA" "BB" "CC" "DD"]
console.log(str3); //["A", "A", " ", "B"]
console.log(str4); // ["1", "2", "3", "4", "5"]

11.str.match(): 返回所有查找的关键字内容的数组

var str="To be or not to be";
var reg=/to/ig;
var str1=str.match(reg);
console.log(str1); //["To", "to"]
console.log(str.match("Hello")); //null

12.str.fromCharCode方法 

是接收一或多个字符编码,然后将其转换为字符串 
是String构造函数的一个静态方法 
 console.log(String.fromCharCode(104,101,108,108,111));//hello 

 

13.str.localeCompare方法

用于比较两个字符串
    1.如果字符串在字母表中应该排在字符串参数之前,则返回一个负数
    1.如果字符串等于字符串参数,则返回0
    1.如果字符串在字母表中应该排在字符串参数之后,则返回一个正数 
var str="yellow";
    console.log(str.localeCompare("brick"));//1
    console.log(str.localeCompare("yellow"));//0
    console.log(str.localeCompare("zoo"));//-1 

14.big()  用大号字体显示字符串

15.blink()  显示闪动字符串

16.bold()  字符串粗体显示

17.link()   将字符串显示为链接

18.fontcolor()  指定颜色显示

19.fontsize()  指定尺寸显示

20.concat()  连接字符串

.......

ES6新增

1.str.trim() 用来删除字符串前后的空格 

 var str="   hello world   ";
    console.log(‘(‘+str.trim()+‘)‘);//(hello world)
    console.log(‘(‘+str+‘)‘);//(   hello world   ) 

2.str.repeat()  返回一个新字符串,表示将原字符串重复n次

var str = ‘helloworld‘;

str.repeat( n );//该字符串就会重复n遍;

3.str.padStart ()用于头部补全

var  str = ‘20199‘; //长度达不到 指定位 ,

str.padStart (8,‘ab’);

//abab2019

4.str.padEnd ()用于尾部补全

var  str = ‘2019‘; //长度达不到 指定位 ,

str.padEnd(8,‘ab’);

//2019abab

5.str.raw()    往往用来充当模板字符串的处理函数,返回一个斜杠都被转义(即斜杠前面再加一个斜杠)的字符串,对应于替换变量后的模板字符串

String.raw = function (strings, ...values) {

var output = "";

for (var index = 0; index < values.length; index++) {

output += strings.raw[index] + values[index];

}

output += strings.raw[index]

return output;

}

//t0e1s2t

6.str.codePointAt()   正确解析四个字节的字符

这两个字符在UTF-16中编码为 0xD842   和  0xDFB9 储存起来需要四个字节,那么对于这样四个字节的东西javascript 无法正确判断,而是将其解析为两个字符;

charCodeAt会分别返回前两个字节和后两个字节的值; 而charAt压根就无法识别;

在ES6中提供给我们一个新的方法codePointAt(); 这个方法可以正确解析四个字节的字符。

var s = "??";

console.log(s.codePointAt()) // 134073

7.String.fromCodePoint()   

相当于ES5内的String.fromCharCode()

先说说 String.fromCharCode()方法;这个方法无法正确识别 32位的 UTF-16字符(也就是上面提到的四个字节的字符 Unicode编码 大于 0xFFFF);

console.log(String.fromCharCode(0x20BB9 )) //  出现了一个奇怪的字符

原因是什么那? 因为fromCharCode不识别四个字节的字符, 他会将第一位省略掉 , 也就是将 0x20BB9 去掉开头 变成了0x0BB9;所以出现的结果不正确;

但是ES6中的String.fromCodePoint()可以正确识别这样的编码;

console.log(String.fromCodePoint(0x20BB9)) //?? 显示正确;

console.log(String.fromCharCode(134066))//?

8.includes() startsWith() endsWith() 判断字符串中是否存在某个字符串

var s = ‘Hello world!‘;

s.startsWith(‘Hello‘)   // true       以参数开头

s.endsWith(‘!‘)         // true       以参数结尾

s.includes(‘o‘)         // true       包括参数;

8.ES6为字符串添加了遍历器接口,使得字符串可以被for...of循环遍历。这个遍历器最大的优点是可以识别大于0xFFFF的码点,传统的for循环无法识别这样的码点,但是不能遍历object

var text = String.fromCodePoint(0x20BB7);

for (let i = 0; i < text.length; i++) {
  console.log(text[i]);
}
// " "
// " "

for (let i of text) {
  console.log(i);
}
// "??"

9.模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量

// 字符串中嵌入变量
var name = "Bob", time = "today";
`Hello ${name}, how are you ${time}?`

........

原文地址:https://www.cnblogs.com/li923/p/11431632.html

时间: 2024-10-23 03:56:30

JavaScript String 字符串方法的相关文章

javascript的字符串方法

JavaScript的字符串方法 indexOf()  在指定字符串中寻找一个字符或者子串,返回一个子串后字符所在的索引 lastIndexOf()  在指定字符串中从后往前查找一个字符或者子串 var zp = "chinancepuzp"; console.log(zp.indexOf("c"));       //输出0 console.log(zp.indexOf("c",1));     //从第1个位置向后开始搜索 返回6 conso

JavaScript string字符串对象常见方法

本文总结下几种常见的字符串方法 一.字符方法 chartAt()与charCodeAt() 1.1 chartAt()以单字符字符串的形式返回给定位置的那个字符 1.2 charCodeAt()返回的是字符编码. var str="hello world" //chartAt()以单字符字符串的形式返回给定位置的那个字符 console.log(str.charAt(4));//o //charCodeAt()返回的是字符编码. console.log(str.charCodeAt(4

JavaScript常用字符串方法

获取类: 1)动态方法: charAt : 获取字符串指定位置上的字符.(参数:一个,指定要获取的字符位置) 1,不接受负数,如果为负数,会返回一个空字符串. 2,如果不给参数,默认是获取第0位置上的字符. 3,只接收一个参数. charCodeAt : 获取字符串中指定位置上字符的Unicode编码(参数: 一个,指定要获取字符编码的字符位置) 1,任何字符都有一个唯一的字符编码. 2,只接收一个参数. 常用: 数字 : 48 ~ 57 下划线 : 95 空格  : 32 制表符 : 9 小写

String字符串方法具体解释

Java开发中,基本都会用户String,有些时候忘记了它还有某一个方法,或者曾经没有使用到.而这些方法可能会节约非常多时间.自己为了学习这些方法,决定对部分測试一下. 定义:String="atm"; System.out.println();//这里为打印结果 以下開始測试各个方法 char charAt(int index) 返回指定索引处的 char 值. System.out.println(a.charAt(0));//a int codePointAt(int index

JavaScript常用字符串方法和属性

一直以来  在喜马拉雅上听  陪你读书(JavaScript WEB前端)  主播沙翼 讲的很好  果断买了这本书  现在做个笔记 var str = 'abcd' str.charAt(0); //输出下标位置的字符 str.charCodeAt(0);//输出下标位置的字符编码值 str.concat('e'); //输出拼接后的字符串 str.indexOf('c'); //输出指定字符的下标位置 str.lastIndexOf('c'); //从后向前搜索输出指定字符的下标位置 str.

javascript string对象方法replace

最简单的replace用法是: var str = 'aaaaa9876b0000'; str.replace(/a/g,'A'); 有时候我们希望只是在匹配的位置添加特定的字符: var str = 'aaaaa9876b0000'; str.replace(/([0-9])/g,'[$1]'); 以上结果为: aaaaa[9][8][7][6]b[0][0][0][0] 如果我们想要对匹配的位置进行数学计算,那么我们可以将第二个参数改为函数,其返回值就是在对应位置题换的字符: 'abc123

JavaScript中的String字符串对象的方法总结:

温故而知新,可以为师矣.字符串对象看下面的方法即可. 1:string.charAt(index)方法:返回该字符串索引的字符. 1 'hello'.charAt(1); 2 "e" 2:string.charCodeAt(index)方法:返回该字符串索引的字符的ASCII码. 1 'a'.charCodeAt(0); 2 97 3:string.indexOf方法确定一个字符串在另一个字符串中的位置(数字型),如果返回-1,就表示不匹配,indexOf从字符串头部开始匹配 1 'h

c# String.IndexOf 方法 string查找字符串

c# String.IndexOf 方法 (value, [startIndex], [count]) 报告指定字符在此实例中的第一个匹配项的索引.搜索从指定字符位置开始,并检查指定数量的字符位置. 参数 value 要查找的 Unicode 字符. 对 value 的搜索区分大小写. startIndex(Int32) 可选项,搜索起始位置.不设置则从0开始. count(Int32) 可选项,要检查的字符位数. 返回值 如果找到该字符,则为 value 的索引位置:否则如果未找到,则为 -1

JavaScript正则表达式-相关的String对象方法

JavaScript正则表达式相关的String对象方法有三个: 1.match(). 2.replace(). 3.search(). match() match(regExp); 使用指定的正则表达式来搜索字符串. 如果找到匹配字符串返回一个数组,否则返回null. 返回的数组包含两个属性:index和input. index是匹配字符串在原字符串中的位置. input属性是对原字符串的引用. var reg_pattern = /a\d/; var str = "apple,a2,b3,a