常见的字符串和数组的方法

300 阅读2分钟

常见的字符串和数组的方法

.toLowerCase():

  • 把字符串转为小写,返回新的字符串
  • 例子

image.png

.toUpperCase():

  • 把字符串转为大写
  • 例子 image.png

.indexOf ( )

  • 返回某个指定的字符串在字符串中第一次出现的索引位置,没有找到则返回 -1
  • 例子

image.png

.substr( 下标开始的位置,从开始到结束的位置 )

  • 返回从指定下标开始指定长度的的子字符串 用法和 arr.splice() 类似
  • 例子

image.png

.split ( )

  • split(): 把字符串分割成字符串数组
  • 例子

image.png

展开运算符 ...

  • 例子分析

image.png

常用的数组方法

反转数组arr.reverse( )

  • 会改变元素组 , 并且返回反转后的新数组
  • 例子

image.png

清空数组的 3种方式

  • 第 1 种方式 arr.length = 0

image.png

  • 第2种方式 arr.splice(0,arr.length); 即删除0 至 数组最后一个元素 (亦可以追加数据)

    • arr.splice(0,arr.length,'可以在删除元素后追加无限个元素');

image.png

  • 第3种方式 arr = []; 即重新赋值一个空数组

数组转为字符串 arr.join( )

  • 将数组的每一项用指定字符连接形成一个字符串。默认连接字符为 ' , ' 逗号
  • 例子

image.png

数组排序 arr.sort (function(v,i) {})

  • arr.sort(function (v, i){})
  • 例子

image.png

交换数据

  • [a, b] = [b, a]

image.png

遍历的方法

arr.forEach (function(v,i) {} )

  • 用于调用数组的每个元素,并将元素传递给回调函数。原数组不变
  • 分析例子

image.png

.arr.map(function(v,i) {} )

  • 遍历数组,返回一个新数组 map
  • 例子1 : 将原有数组中每一项的数据加10返回新数组
  • 例子2 : 个位数补0返回新数组

filter(function(v,i){})

  • 例子1 去掉多余的字符串

image.png

  • 例子 2 去掉 [13, 0, '', 90, 78, '' , ''] 的空字符串和0值

image.png

数组去重

image.png

案例分析

统计字符串出现的次数

image.png

封装一个函数,实现功能:往函数传参为该格式字符串:'get-elements-by-class-name',得到驼峰命名法的返回值为‘getElementsByClassName’

image.png

<script>
// 封装一个函数,实现功能:往函数传参为该格式字符串:'get-elements-by-class-name',得到驼峰命名法的返回值为‘getElementsByClassName’

let str = 'GET-elemenTs-bY-cLAss-nAMe'

// 2.使用split方法通过-分隔字符串 ,返回一个数组,里面有元素就是一个一个的单词: let arr = str.split('-') // ['get', 'elements', 'by', 'class', 'name']

// 先处理第0个字符串,将字符串转换为小写 arr[0] = arr[0].toLowerCase()

// 3.遍历数组,获取到里面一个一个的单词 for (let i = 1; i < arr.length; i++) { // 4.处理单个单词(第一个转小写),其它的第一个转为大写,其它的转为小写,拼接为一个新的字符串,覆盖原字符串 // 
console.log(arr[i]) // elements // console.log(arr[i](#).toUpperCase() + 
arr[i].substr(1).toLowerCase())
arr[i] = arr[i](#).toUpperCase() + 
arr[i].substr(1).toLowerCase() } // 将数组使用指定的连接符再拼接到一起
let vName = arr.join('') console.log(vName)
</script>