zoukankan      html  css  js  c++  java
  • 【应知应会】15个常用的JavaScript字符串操作方法

    1 初始化

    //常用初始化方法
    var stringVal = "hello iFat3";
    //构造函数创建方法
    var stringObj = new String("hello iFag3");
    

    2 length属性

    var stringVal = "hello iFat3";
    //输出 11
    console.log(stringVal.length);
    

    3 charAt()

    返回给定位置的字符

    var stringVal = "hello iFat3";
    //输出 e
    console.log(stringVal.charAt(1));
    

    4 charCodeAt()

    返回给定位置的字符编码

    var stringVal = "hello iFat3";
    //输出 101,e的字符编码
    console.log(stringVal.charCodeAt(1));
    

    5 concat()

    字符串拼接方法,大多数情况下使用加号拼接字符串更简单易行。

    var stringVal = "hello ";
    //可以接受任意多个参数
    var result = stringVal.concat("iFat3","!");
    //输出 hello 
    console.log(stringVal);
    //输出 hello iFat3!
    console.log(result);
    

    6 substr()

    字符串截取,接受一个或两个参数,第一个参数指定开始位置,第二个参数指定返回的字符个数。

    var stringVal = "hello iFat3";
    //输出 lo iFat3
    console.log(stringVal.substr(3));
    //输出 lo iF
    console.log(stringVal.substr(3,5));
    

    7 substring()

    字符串截取,接受一个或两个参数,第一个参数指定开始位置,第二个参数指定结束位置。slice()和substring()方法在操作字符串上的用法基本相同。

    var stringVal = "hello iFat3";
    //输出 lo iFat3
    console.log(stringVal.substr(3));
    //输出 lo
    console.log(stringVal.substring(3,5));
    

    8 indexOf()和lastIndexOf()

    子串搜索方法,返回子串所在位置,没找到返回-1,也可以接受第二个参数,表示搜索的开始位置。lastIndexOf()方法是从字符串的末尾向前搜索,lastIndexOf()的第二个参数表示搜索的起始位置。

    var stringVal = "hello iFat3 at";
    //输出 8
    console.log(stringVal.indexOf("at"));
    //输出 12
    console.log(stringVal.lastIndexOf("at"));
    //输出 12
    console.log(stringVal.indexOf("at",9));
    //输出 8
    console.log(stringVal.lastIndexOf("at",10));
    

    9 trim()

    ECMAScript 5为所有字符串定义了trim()方法。这个方法会创建一个字符串的副本,删除前置及后缀的所有空格。支持这个方法的浏览器有IE9+、Firefox3.5+、Safari5+、Opera10.5+和Chrome。

    var stringVal = " hi iFat3 ";
    //输出 hi iFat3
    console.log(stringVal.trim());
    

    非兼容浏览器的trim()实现方法。

    String.prototype.trim=function() {
        return this.replace(/(^s*)|(s*$)/g,"");
    }
    var stringVal = " hi iFat3 ";
    //输出 hi iFat3
    console.log(stringVal.trim());
    

    10 toUpperCase()和toLowerCase()

    字符串大小写转换方法,toLocaleUpperCase()和toLocaleLowerCase()是针对特定地区的实现。

    var stringVal = "hi iFat3";
    //输出 HI IFAT3
    console.log(stringVal.toUpperCase());
    //输出 hi ifat3
    console.log(stringVal.toLowerCase());
    

    11 match()

    字符串模式匹配方法,返回匹配的数组。

    var dus = "1du,2du,3du,4du";
    var pattern = /.du/g;
    var matches = dus.match(pattern);
    //输出 4
    console.log(matches.length);
    //输出 1du
    console.log(matches[0]);
    

    返回字符串中第一个匹配项的索引。

    var dus = "1du,2du,3du,4du";
    var pos = dus.search(/du/);
    //输出 1
    console.log(pos);
    

    13 replace()

    var dus = "1du,2du,3du,4du";
    var result = dus.replace("du","fat");
    //输出 1fat,2du,3du,4du
    console.log(result);
    result = dus.replace(/du/g,"fat");
    //输出 1fat,2fat,3fat,4fat
    console.log(result);
    result = dus.replace(/(.du)/g,"a($1)");
    //输出 a(1du),a(2du),a(3du),a(4du)
    console.log(result);
    

    14 split()

    基于指定的分割符将一个字符串分割成多个子串。

    var dus = "1du,2du,3du,4du";
    var result = dus.split(",");
    //输出 4
    console.log(result.length);
    

    15 localeCompare()

    比较两个字符串,返回1,0或-1。

    var val = "iFat3";
    //输出 1
    console.log(val.localeCompare("abc"));
    //输出 0
    console.log(val.localeCompare("iFat3"));
    //输出 -1
    console.log(val.localeCompare("zoo"));
    
  • 相关阅读:
    USACO 3.3 A Game
    USACO 3.3 Camelot
    USACO 3.3 Shopping Offers
    USACO 3.3 TEXT Eulerian Tour中的Cows on Parade一点理解
    USACO 3.3 Riding the Fences
    USACO 3.2 Magic Squares
    USACO 3.2 Stringsobits
    USACO 3.2 Factorials
    USACO 3.2 Contact
    USACO 3.1 Humble Numbers
  • 原文地址:https://www.cnblogs.com/ifat3/p/7268227.html
Copyright © 2011-2022 走看看