javaScript字符串常用方法

字符串常用方法分为三类:1、操作方法;2、转换方法;3、魔板匹配方法。分别展开举例说明。

1、操作方法

1.1、增

        这里增的意思并不是说直接增添内容,而是创建字符串的一个副本,再进行操作除了常用 +以及 ${}进行字符串拼接之外,还可通过 concat()

let stringValue = "hello ";
let result = stringValue.concat("world");
console.log(result); // "hello world"
console.log(stringValue); // "hello"

1.2、删

         这里的删的意思并不是说删除原字符串的内容,而是创建字符串的一个副本,再进行操作
常见的有:
        slice()
        substr()
        substring()
        这三个方法都返回调用它们的字符串的一个子字符串,而且都接收一或两个参数。

let stringValue = "hello world";
console.log(stringValue.slice(3)); // "lo world"
console.log(stringValue.substring(3)); // "lo world"
console.log(stringValue.substr(3)); // "lo world"
console.log(stringValue.slice(3, 7)); // "lo w"
console.log(stringValue.substring(3,7)); // "lo w"
console.log(stringValue.substr(3, 7)); // "lo worl"

1.3、改

        这里改的意思也不是改变原字符串,而是创建字符串的一个副本,再进行操作
常见的有:
        trim()、trimLeft()、trimRight()
        repeat()
        padStart()、padEnd()
        toLowerCase()、toUpperCase() 

        1.3.1、trim()、trimLeft()、trimRight()

        删除前、后或前后所有空格符,再返回新的字符串

let stringValue = " hello world ";
let trimmedStringValue = stringValue.trim();
console.log(stringValue); // " hello world "
console.log(trimmedStringValue); // "hello world"

        1.3.2、 repeat()

        接收一个整数参数,表示要将字符串复制多少次,然后返回拼接所有副本后的结果

let stringValue = "na ";
let copyResult = stringValue.repeat(2) // na na

        1.3.3、padStart()、padEnd()      

        padStart(targetLength, padString):用另一个字符串填充当前字符串(如果需要会重复填充),直到达到给定的长度。填充是从当前字符串的开头开始的。最后返回一个新的字符串。
targetLength:当前 str 填充后的长度。如果该值小于或等于 str.length,则会直接返回当前 str。
padString(可选):用于填充当前 str 的字符串。如果 padString 太长,无法适应 targetLength,则会从末尾被截断。默认值为 Unicode“空格”字符(U+0020)

        padEndt(targetLength, padString):用另一个字符串填充当前字符串(如果需要会重复填充),直到达到给定的长度。填充是从当前字符串的末尾开始的。最后返回一个新的字符串。
targetLength:当前 str 填充后的长度。如果该值小于或等于 str.length,则会直接返回当前 str。
padString(可选):用于填充当前 str 的字符串。如果 padString 太长,无法适应 targetLength,则会从末尾被截断。默认值为 Unicode“空格”字符(U+0020)。

  const str = '345'
  console.log(str.padStart(2)); // '345'
  console.log(str.padStart(4)); // ' 345'
  console.log(str.padStart(4, '12')); // '1345'
  console.log(str.padStart(5, '12')); // '12345'
  console.log(str.padStart(8, '12')); // '12121345'
  console.log(str.padEnd(2)); // '345'
  console.log(str.padEnd(4)); // '345 '
  console.log(str.padEnd(4, '67')); // '3456'
  console.log(str.padEnd(5, '67')); // '34567'
  console.log(str.padEnd(8, '67'));  // '34567676'

        1.3.4、 toLowerCase()、toUpperCase() 

        大小写转化

let stringValue = "hello world";
console.log(stringValue.toUpperCase()); // "HELLO WORLD"
console.log(stringValue.toLowerCase()); // "hello world"

1.4、查

        1.4.1、charAt()

        返回给定索引位置的字符,由传给方法的整数参数指定 

let message = "abcde";
console.log(message.charAt(2)); //

        1.4.2、indexOf()

        从字符串开头去搜索传入的字符串,并返回位置(如果没找到,则返回 -1)

let stringValue = "hello world";
console.log(stringValue.indexOf("o")); // 4

        1.4.3、startWith()、includes()

        从字符串中搜索传入的字符串,并返回一个表示是否包含的布尔值

let message = "foobarbaz";
console.log(message.startsWith("foo")); // true
console.log(message.startsWith("bar")); // false
console.log(message.includes("bar")); // true
console.log(message.includes("qux")); // false

2、转换方法

2.1、split 

 把字符串按照指定的分割符,拆分成数组中的每一项

let str = "12+23+34"
let arr = str.split("+") // [12,23,34]

3、模板匹配方法

        针对正则表达式,字符串设计了几个方法match()、search()、replace() 

3.1、match()

        接收一个参数,可以是一个正则表达式字符串,也可以是一个 RegExp 对象,返回数组

let text = "cat, bat, sat, fat";
let pattern = /.at/;
let matches = text.match(pattern);
console.log(matches[0]); // "cat"

3.2、search()

        接收一个参数,可以是一个正则表达式字符串,也可以是一个 RegExp 对象,找到则返回匹配索引,否则返回 -1

        

let text = "cat, bat, sat, fat";
let pos = text.search(/at/);
console.log(pos); //

3.3、replace()

        接收两个参数,第一个参数为匹配的内容,第二个参数为替换的元素(可用函数)

 

let text = "cat, bat, sat, fat";
let result = text.replace("at", "ond");
console.log(result); // "cond, bat, sat, fat"

你可能感兴趣的:(javascript,前端,开发语言)