JavaScript---字符串内置方法

目录

一、字符访问方法

1.1charAt()

1.2charCodeAt()

二、字符串拼接方法

2.1concat()

三、字符串查找方法

3.1indexOf()

3.2lastIndexOf()

3.3includes()

3.4startsWith()

3.5endsWith()

四、字符串截取方法

4.1slice()

4.2substring()

五、字符串替换方法

5.1replace()

六、字符串大小写转换方法

6.1toUpperCase()

6.2toLowerCase()

七、字符串分割方法

7.1split()

八、字符串去除空白方法

8.1trim()

九、字符串填充方法

9.1padStart()

9.2padEnd()

十、字符串重复方法

10.1repeat()

十一、字符串标准化方法

11.1normalize()

十二、字符串比较方法

12.1localeCompare()

一、字符访问方法

1.1charAt()

  • 功能:返回指定索引位置的字符
  • 语法:str.charAt(index)

注意:该方法与数组中括号[index]下标访问方法功能一样,不推荐使用这种方法(啰嗦)

const str = "abcd";
console.log(str[1]); // b
console.log(str.charAt(1)); // b

1.2charCodeAt()

  • 功能:返回指定索引位置字符的Unicode编码
  • 语法:str.charCodeAt(index)
const str = "abcd";
console.log(str.charCodeAt(1)); // 98

二、字符串拼接方法

2.1concat()

  • 功能:用于连接两个或多个字符串,并返回一个新的字符串
  • 语法:str.concat(str1,str2,...,strN)
const str1 = "Hello"
const str2 = "World!"
const str = str1.concat(str2);
console.log(str); // "HelloWorld!"

三、字符串查找方法

3.1indexOf()

  • 功能:返回指定字符串在原字符串中第一次出现的索引,未找到返回-1
  • 语法:str.indexOf(searchValue,fromIndex)
  • fromIndex:表示从字符串的哪个索引位置向后查找,默认为0
const str = "Hello,World!";
console.log(str.indexOf("Hello")); // 0
console.log(str.indexOf("Hello",1)); // -1

3.2lastIndexOf()

  • 功能:返回指定字符串在原字符串中最后一次出现的索引(即从字符串尾部向头部查找),未找到返回-1
  • 语法:str.lastIndexOf(searchValue,fromindex)
  • fromIndex:表示从字符串的哪个索引位置向前查找,默认为str.length - 1
const str = "Hello,World!";
console.log(str.lastIndexOf("Hello")); // 0
console.log(str.lastIndexOf("Hello",1)); // 0

3.3includes()

  • 功能:判断一个字符串是否包含另一个字符串,返回布尔值
  • 语法:str.includes(searchString,position)
  • position:表示开始搜索的位置
const str = "Hello,World!";
const searchStr = "Hello";
console.log(str.includes(searchStr)); // true
console.log(str.includes(searchStr,1)); // false

3.4startsWith()

  • 功能:判断字符串是否以指定的子字符串开头,返回布尔值
  • 语法:str.startsWith(searchString,position)
  • position:表示向后搜索的位置
const str = "Hello,World!";
const searchStr = "Hello";
console.log(str.startsWith(searchStr)); // true
console.log(str.startsWith(searchStr,1)); // false

3.5endsWith()

  • 功能:判断字符串是否以指定的子字符串结尾,返回布尔值
  • 语法:str.startsWith(searchString,length)
  • length:表示搜索字符串的长度,默认为str.length
const str = "Hello,World!";
const searchStr = "Hello";
console.log(str.endsWith(searchStr)); // true
console.log(str.endsWith(searchStr,4)); // false
console.log(str.endsWith(searchStr,5)); // true

四、字符串截取方法

4.1slice()

  • 功能:提取字符串的一部分,并返回一个新的字符串。可以接受负数索引,表示从字符串的末尾开始计算。
  • 语法:str.slice(start,end)
  • start:切割的起始位置
  • end:切割的终止位置,不包括end
const str = "Hello,World!";
const a = str.slice(0,5);
const b = str.slice(2,5);
console.log(a); // "Hello"
console.log(b); // "llo"

4.2substring()

  • 功能:提取字符串中两个指定索引之间的字符,返回一个新的字符串。不接受负数索引
  • 语法:str.substring(start,end)
const str = "Hello,World!";
const a = str.substring(0,5);
const b = str.substring(2,5);
console.log(a); // "Hello"
console.log(b); // "llo"

五、字符串替换方法

5.1replace()

  • 功能:替换字符串中的指定部分,并返回一个新的字符串。默认只替换第一个匹配项。
  • 语法:str.replace(regexp | substr,newSubstr | function)
  • regexp:正则表达式对象。指定要匹配的模式
  • substr:字符串,表示要被替换的字符串
  • newSubstr:替换字符串
  • function:回调函数,动态生成替换的内容。该函数会在每次匹配时被调用,其返回值将作为替换内容
const str = "Hello,World!";
console.log(str.replace("World","JavaScript")); // "Hello,JavaScript!"
console.log(str.replace("World",() => "JavaScript")); // "Hello,JavaScript!"

六、字符串大小写转换方法

6.1toUpperCase()

  • 功能:将字符串中的所有字符转换为大写,返回一个新的字符串
  • 语法:str.toUpperCase()
const str = "Hello,World!";
console.log(str.toUpperCase());    // HELLO,WORLD!

6.2toLowerCase()

  • 功能:将字符串中的所有字符转换为小写,返回一个新的字符串
  • 语法:str.toLowerCase()
const str = "Hello,World!";
console.log(str.toLowerCase());    // "hello,world!"

七、字符串分割方法

7.1split()

  • 功能:将字符串分割成一个数组,可以指定分隔符
  • 语法:str.split(separator,limit)
  • separator:分隔符,可以是字符串正则表达式。如果是空字符串,则字符串会被分割成由每个字符组成的数组
  • limit:整数参数,用于指定返回的数组的最大长度。当分割操作在达到limit个元素时,会停止分割
const str = "Hello,World!";
const arr = str.split(',');
console.log(arr); // ["Hello", "World!"]

八、字符串去除空白方法

8.1trim()

  • 功能:去除字符串两段的空白字符,并返回一个新字符串
  • 语法:str.trim()
const str = "  Hello,World!  ";
console.log(str.trim()); // "Hello,World!"

九、字符串填充方法

9.1padStart()

  • 功能:用另一个字符串从左侧填充当前字符串,直到达到指定的长度
  • 语法:str.padStart(targetLength,padString)
  • targetLength:整数,表示期望字符串达到的最终长度。如果targetLength小于或等于原字符串str长度,则直接返回原字符串
  • padString:填充字符串,用于填充在原字符串开头。默认使用空格字符填充。
const str = "Hello,World!";
console.log(str.padStart(20)); // "     Hello,World!"
console.log(str.padStart(20,"AAA")); // "AAAAAAAHello,World!"

9.2padEnd()

  • 功能:用另一个字符串从右侧填充当前字符串,直到达到指定的长度
  • 语法:str.padEnd(targetLength,padString)
const str = "Hello,World!";
console.log(str.padEnd(20)); // "Hello,World!     "
console.log(str.padEnd(20,"AAA")); // "Hello,World!AAAAAAA"

十、字符串重复方法

10.1repeat()

  • 功能:返回一个新字符串,该字符串包含指定次数重复的原字符串
  • 语法:str.repeat(count)
  • count:正整数,表示重复次数。默认为0
const str = "Hello,World!";
console.log(str.repeat(2)); //Hello,World!Hello,World!
console.log(str.repeat()); // ""

十一、字符串标准化方法

11.1normalize()

  • 功能:按照指定的Unicode正规化形式将字符串正规化。可用于处理不同字符表达形式的规范化
  • 语法:str.normalize(form)
  • form:字符串,用于指定Unicode正规化形式。默认使用‘NFC’格式
let str = '\u006E\u0303'; // "ñ" 的组合形式
let normalizedStr = str.normalize('NFC');  
console.log(normalizedStr);  "ñ"

十二、字符串比较方法

12.1localeCompare()

  • 功能:比较两个字符串,返回一个数字表示它们在排序顺序中的相对位置
  • 语法:str.localeCompare(compareStrig,locales,options)
  • compareString:和str比较的字符串
  • locales:指定进行比较时使用的语言环境。默认使用运行时环境的默认语言环境
  • options:配置对象,定制比较的行为
    • base:忽略大小写和重音符号
    • accent:忽略大小写
    • case:忽略重音符号
    • variant:考虑大小写和重音符号(默认值)
    • ignorePunctuation:布尔值,是够忽略标点符号,默认为False
    • numeric:布尔值,指示是否按数字顺序比较包含数字的字符串。默认值为False
  • 返回值:
    • 如果str在compareString之前,返回一个负数
    • 如果str等于compareString,返回0
    • 如果str在compareString之后,返回一个正数
const referenceStr = 'apple';
const compareString = 'banana';
const result = referenceStr.localeCompare(compareString);
console.log(result); // -1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是洋洋a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值