JavaScript 字符串对象 (JS 里字符串有哪些API?)

字符串对象:

        作用:String对象用于处理文本(字符串)

        创建:

                var str = "abc";

                var str = new String("abc");

        包装对象(装箱、拆箱)——了解

        JS中能够自动将基本类型包装成对应的包装对象,使用完毕后自动还原。

        字符串也可以看作是一个数组,数组的元素是一个一个的字符。

API:

        属性:length——字符串长度

        方法:字符、编码

                charAt(index)  // 字符串下标为index的值

                charCodeAt(index)  // 返回指定位置的字符的Unicode编码

                String.fromCharCode(code)  // 接受一个指定的Unicode值,然后返回一个字符串。如果有多个值,用英文逗号(,)隔开

/**字符串API**/

<script>
    var str = "hello world!"
    document.write(str.charAt(1));
</script>
// 输出的是e

<script>
    var str = "hello world!"
    document.write(str.charCodeAt(1));
</script>
// 输出的是101

<script>
    document.write(String.fromCharCode(99));
</script>
// 输出的是c

<script>
    document.write(String.fromCharCode(97, 98, 99));
</script>
// 输出的是abc

查找API:

        indexOf()  // 返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回 -1

        lastIndexOf()  // 可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索,如果没有找到匹配字符串则返回 -1

/**查找API**/

/**
* 方法indexOf
**/
<script>
    var str="Hello world!"
    document.write(str.indexOf("Hello") + "<br />")
    document.write(str.indexOf("World") + "<br />")
    document.write(str.indexOf("world"))
</script>
// 方法大小写敏感
// 所以输出的值是:
// 0 
// -1 
// 6


/**
* 方法lastIndexOf
**/
<script>
    var str="I am from runoob,welcome to runoob site.";
    var n=str.lastIndexOf("runoob");
    console.log(n);
</script>
// 方法大小写敏感
// 所以输出的值是:
// 28

正则表达式相关:

        match()  // 在字符串内检索指定的值,找到一个或多个正则表达式的匹配。要看正则是否具有标志 g。没有找到返回null

        search()  // 用于检索字符串中指定的字符串,或检索与正则表达式相匹配的子字符串;返回对应位置,没有检索到返回-1

        replace(oldContent, newContent)  // 用后面的值替换掉前面的值

        split(sep)  // 以指定的sep分割符来分割字符串内容,返回分割后的数组

/**正则表达式相关**/

/**
* match()方法
**/
<script>
    var str="The rain in SPAIN stays mainly in the plain"; 
    var n=str.match(/ain/g);
    console.log(n);
</script>
// 在字符串中查找 "ain", 输出的是:
// ["ain", "ain", "ain"]


/**
* search()方法
* 检索 "W3School"
**/
<script>
    var str="Visit W3School!"
    document.write(str.search(/W3School/))
</script>
// 输出的值是:
// 6

<script>
    var str="Visit W3School!"
    document.write(str.search(/w3school/))
</script>
// 因对大小写敏感,所以输出的值是:
// -1

<script>
    var str="Visit W3School!"
    document.write(str.search(/w3school/i))
</script>
// 因做了忽略大小写的检索处理,所以输出的值是:
// 6


/**
* replace() 方法
**/
<script>
    var str="Visit Microsoft! Visit Microsoft!";
    var n=str.replace("Microsoft","Runoob");
    console.log(n);
</script>
// 执行一次替换,当第一个 "Microsoft" 被找到,它就被替换为 "Runoob",输出的值是:
// "Visit Runoob!Visit Microsoft!"

/**
* split() 方法
**/
<script>
    var str="How are you doing today?"
    document.write(str.split(" ") + "<br />")
    document.write(str.split("") + "<br />")
    document.write(str.split(" ",3))
</script>
// 输出的值是:
// ["How", "are", "you", "doing", "today?"]
// ["H", "o", "w", " ", "a", "r", "e", " ", "y", "o", "u", " ", "d", "o", "i", "n", "g", " ", "t", "o", "d", "a", "y", "?"]
//  ["How", "are", "you"]

截取API:

        slice(start, end)  // 截取,可对数组操作,不包括下标为end的元素

        substring(start, end) // 截取,不可对数组操作

大小写转换API:

        toUpperCase()  // 把字符串转换为大写

        toLowerCase()  // 把字符串转换为小写

/**把字符串转换为大写**/ 
<script>
    var str="Hello World!"
    console.log(str.toUpperCase())
</script>
// 输出字符串:HELLO WORLD!


/**把字符串转换为小写**/
<script>
    var str="Hello World!"
    console.log(str.toLowerCase())
</script>
// 输出字符串:hello world!

ES6新增字符串API

        String.prototype.startsWith()  // 是否以···作为开头

        String.prototype.endsWith()  // 是否以···作为结尾

        String.fromCodePoint()  // 从码点返回对应字符

        String.prototype.codePointAt()  // 返回一个字符的码点

作者博客:www.huanlezhanji.com

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Yongqiang Chen

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

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

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

打赏作者

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

抵扣说明:

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

余额充值