js总结 |字符串与数组的相互转换

一、数组转字符串

  • arr.join("指定符号"):用指定符号把数组元素连接起来,返回连接好的字符串

    let arr=[1,2,3,4]
    arr.join(',')		// "1,2,3,4"
    arr.join('-')		// "1-2-3-4"
    

二、字符串转数组

多个元素

  • str.split(分隔符,留下的个数)

    去掉指定分隔符并切开字符串,分割成数组

    let str="1,2,3,4"
    str.split(',')			//["1", "2", "3", "4"]
    
    let str="1-2-3-4"
    str.split('-')			//["1", "2", "3", "4"]
    

一个元素

  • new Array(str)

    let str="1"
    new Array(str)			//["1"]
    

结合两种情况

怎么综合考虑两种情况呢?通常会用到下面两种方法:

  • str.includes(要找的字符,从哪开始)

    判断一个字符串是否包含在另一个字符串中,根据情况返回 true 或 false,区分大小写。根据这个判断转换的元素个数,只要找不到分隔符,那么说明元素只有一个

  • toString()

    转字符串。保险起见,需要先转字符串。

    let str//需要转换的字符串
    let result//需要后的结果
    
    if(!str.toString().includes(',')){
      result=new Array(str)
    }else{
      result=str.split(',')
    }
    

封装函数

// [String] str:(必选)需要转换的字符串 
// [String] mark:(可选)指定分隔符
let strToArr=function(str,mark=''){
    if(mark=''){
        return new Array(str)
    }else{
        return str.split(mark)
    }
}

使用

strToArr('1,2,3',',')	//["1", "2", "3"]
let str="1,2,3"
strToArr(str,',')		//["1", "2", "3"]
strToArr('1')
["1"]
posted @ 2020-11-10 12:04  sanhuamao  阅读(8434)  评论(0编辑  收藏  举报