微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

字符串的基本方法

一.字符串的创建

1.字面量

var str = 'hello'

2.构造函数

var str = new String('hello')

二.字符串的操作

1.length 属性  

字符串长度,就是字符串的个数

ps:空字符也算一个字符

2.索引

字符串也能像数组一样,通过索引访问对应的字符

ps:不过字符串不能通过索引进行修改

3.for循环遍历字符串

var str = 'helloworld'
for(var i = 0 ; i < str.length ; i++){
    console.log(str[i])
}

三.包装数据类型

1.定义

数据类型为基本数据类型,但是能够调用方法,当使用时会自动转换成复杂数据类型,使用完自动转回基本数据类型

2.哪些是封装类型

字符串 、数值、布尔值

四.字符串的常用方法

1.charat(索引)   charCodeAt()

var str = 'helloworld'
var num = charat(2) //跟数组一样从0开始

console.log(num) 
//返回值为l




//字符串.charCodeAt(下标)    将字符转换为对应的Unicode编码     
str[0].charCodeAt(3)     




2.indexOf 、 lastIndexOf

var str = 'helloworld'
//indexOf()

var num = indexOf('l')  //返回第一个匹配括号内的字符的位置,从0开始计算
//结果为2

//lastIndexOf('l')  //从最后开始往前数,返回第一个匹配的位置
//结果为3

3.substring  、 substr

var str = 'helloworld'
//substring(start,end) start 开始截取的位置   end 截取结束的位置 不包含end

var newStr = str.substring(2,5)

console.log(newStr)  
//结果为  llo



//substr(start , num)  start 开始截取的位置   num 从开始位置向后截取多少个

var newStr = str.substring(2,5)

console.log(newStr) 

//结果为llowo

//当省略掉后面的数量时,截取后面所有的字符
 
var newStr = str.substr(2)

console.log(newStr) 
//结果为lloworld

4.replace

//将字符串中的一些字符替换为另外的指定字符

var str = 'sdfasfsdf==sfa' 

str.replace('sdf','dss')   //第一个参数为原字符串的子字符串,第二个参数是需要更换的字符串

console.log(str)
//输出结果为   dssasfsdf==sfa

5.split

//将字符串通过确定的符号进行分割,返回一个新的数组
var str = 'javascript html css'

var newArray = str.split(' ') // 通过空格分割
var newArray = str.split('')  //每个字符都分割



var newArray = str.split('c') //通过c分割
//结果  ['javas' , 'ript html ','ss']

6.concat

连接两个字符串,返回连接之后的字符串


var str = 'hello'
var s1 = str.concat('world')
console.log(s1) 
//结果为   helloworld

7.trim

删除字符串两边的空格

8.startWith()  、  endWith()

startWith()     endWith()  
var src = 'https://mp.csdn.net'  
//startWith(str)    以str开头的    网址的协议判断

src.startWith('https:')    如果匹配则返回true 不匹配则返回false



//endWith(str)    以str结尾的   网址的后缀判断

src.endWith('.net')   

9.toLowerCase   、toupperCase

字符串转换为大写或者小写 

五.字符串的相关案例(思维练习)

1.反转字符串

function testReverse(){
    var str = 'abcdefg'
    var newArr = str.split('')
    newArr.reverse()
    str = newArr.join('')
    console.log(str)

}
testReverse()

2.替换字符

function testReplace(){
    var str = 'sadhjaksdMMsfsdfsdfioMMsdfnsdifMMsdfsdf'
    var newArray = str.split('MM')
    var newStr = newArray.join('**')
    console.log(newStr)
}
testReplace()

3.字符串分割

function testSplit(){
    var strArray = []

    var str = 'javascript-html-css'
    var num = 0
    while(num != -1){
        num = str.lastIndexOf('-')
        var newStr = str.substr(num + 1)
        str = str.replace('-' + newStr , '')
        strArray.unshift(newStr)
    }
    console.log(strArray)
}
testSplit()

六、面试题(数组去重)

var arr = [9, 2, 5, 2, 8, 2, 5]
function fun() {
    var newArr = new Array()
    arr.forEach(function (item) {
        if (newArr.includes(item) == false) {
            newArr.push(item)
        }
    })
    return newArr
}
console.log(fun());

原文地址:https://www.jb51.cc/wenti/3288214.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐