美文网首页
review javascript 20:string API

review javascript 20:string API

作者: 蝴蝶结199007 | 来源:发表于2017-04-27 01:01 被阅读5次

(1)知识点

  • (1.1)大小写转换
  • (1.2)获取指定位置的字符或unicode
  • (1.3)查找关键字的位置
  • (1.4)获取子字符串

(2)细化

所有API都无法修改原字符串,必定返回新字符串

(2.1)大小写转换

var newStr=str.toLowerCase(); //全部转小写
var newStr=str.toUpperCase(); //全部转大写

(2.2)获取指定位置的字符或unicode

a. var char=str[i]
b. str.charAt(i);
var unicode=str.charCodeAt(i);

(2.3)查找关键字的位置

返回的都是关键字的位置下标

a.找下一个匹配的关键字位置:

var i=str.indexOf("kword",starti)

该方法将从头到尾地检索字符串 str,看它是否含有子串 kword;如果要检索的字符串值没有出现,则该方法返回 -1。
starti是可选参数,如果省略starti,则会从0开始。
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

Paste_Image.png

b.找前一个匹配的关键子位置:

var i=str.lastIndexOf("kword",starti);

如果省略starti,则会从最后一位开始
starti:开始查找的位置,如果没找到,都返回-1

(2.4)获取子字符串

a. var sub=str.slice(starti,endi+1);
b. str.substring(starti,endi+1); //不支持负数参数
c. str.substr(starti,n);

a的使用方法等同于数组,http://www.jianshu.com/p/000ea322f218


(3)实践

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>string API</title>
</head>
<body>
<script type="text/javascript">
    /**
     * (1)大小写转换
     * (2)获取指定位置的字符或unicode
     * (3)查找关键字的位置
     * (4)获取子字符串
     *
     */
    init();
    function init() {
        var str1 = 'Hello World!';
        lower(str1);
        upper(str1);
        char(str1);
        //检索关键字 indexOf
        findKeyword(str1, 'H');  // -1,H位置在0,检索从1开始的
        findKeyword(str1, 'e');  // 1
        findKeyword(str1, 'hello');  // -1
        findKeyword(str1, 'World');  // 6
        //lastIndexOf
        findLastKeyword(str1, 'H');  //0
        findLastKeyword(str1, 'e');  //1
        findLastKeyword(str1, 'World');  //-1
        //获取子字符
        getChild(str1);

    }
    //全部转换成小写
    function lower(str) {
        var newStr = str.toLowerCase();
        console.log(newStr);
    }
    //全部转换成大写
    function upper(str) {
        var newStr = str.toUpperCase();
        console.log(newStr);
        console.log('----------完美的分隔符----------');
    }
    //获取指定位置的字符
    function char(str) {
        console.log('位置在4的字符:' + str.charAt(4));
        console.log('位置在8的字符:' + str[8]);
        var unicode = str.charCodeAt(8);
        console.log('位置在8的unicode:' + unicode);
        console.log('----------完美的分隔符----------');
    }
    /**
     * 查找关键字的位置
     * 返回的都是关键字的位置下标
     */
    function findKeyword(str, keyWord) {
        var i = str.indexOf(keyWord, 1);    //省略位置,则从0开始
        console.log(i);
    }
    function findLastKeyword(str, keyWord) {
        var i = str.lastIndexOf(keyWord, 1);    //省略位置,则从0开始
        console.log(i);
    }

    /**
     * 获取子字符串
     * var sub=str.slice(starti,endi+1);
     * str.substring(starti,endi+1); //不支持负数参数
     * str.substr(starti,n);
     *
     */
    function getChild(str) {
        var sub1 = str.slice(2, 4);
        var sub2 = str.substring(2, 4);
        var sub3 = str.substr(2, 3);
        console.log('sub1:' + sub1);
        console.log('sub2:' + sub2);
        console.log('sub3:' + sub3);
    }


</script>
</body>
</html>

相关文章

网友评论

      本文标题:review javascript 20:string API

      本文链接:https://www.haomeiwen.com/subject/joxgzttx.html