JavaScript 3 数组、字符串 方法

333 阅读2分钟

array

let a = [1,3,4,2,5];

// toString() 把数组转换成字符串并返回结果。
a.toString() // "1,3,4,2,5"

// join() 把数组所有元素放入一个字符串中,元素通过制定的分隔符分割。
a.join("") // "13425"

// push() 向数组末尾添加一个或多个元素,并返回新数组的长度lenght。
a.push(1) // 6  // a = [1, 3, 4, 2, 5, 1]

// pop() 删除并返回数组的最后一个元素。
a.pop() // 1 // a = [1, 3, 4, 2, 5]

// unshift() 向数组的开头添加一个或多个元素,并返回新数组的长度。
a.unshift(1) // 6 // a = [1, 1, 3, 4, 2, 5]

// shift() 删除并返回数组的第一个元素。
a.shift() // 1 // a = [1, 1, 3, 4, 2, 5]

// splice() 删除元素,向数组添加新的元素,返回删除掉的元素。
a.splice(2,2,4,4,4,4) //[4, 2] // a = [1, 3, 4, 4, 4, 4, 5]

// concat() 连接两个或多个数组,并返回新结果。
a.concat([1,1,1,1]) // [1, 3, 4, 4, 4, 4, 5, 1, 1, 1, 1]

// slice() 返回数组中选定的元素。
a.slice(2,6) // [4, 4, 4, 4]

// sort() 对数组进行排序。
a.sort(()=>Math.random()-0.5)//  随机排序  // [5, 4, 3, 4, 1, 4, 4]

// reverse() 翻转数组中元素顺序。
a.reverse() // [4, 4, 1, 4, 3, 4, 5]

// Math.max.apply() 数组最大值
Math.max.apply(Math,a) // 5

// filter 过滤器
a.filter(v=>v>4) // [5]

// map 遍历 参数1 value 参数2 key 参数3 原数组
a.map((a,b,c)=>{console.log(a,b,c)})
// 4 0 [4, 4, 1, 4, 3, 4, 5]
// 4 1 [4, 4, 1, 4, 3, 4, 5]
// ......

// forEach 类似map遍历数组 forEach 不能中断循环(break return) 没有返回值 map可以return 返回值中断循环

// some 方法用于检测数组中的元素是否满足指定条件
a.some((v)=>{ return v>4}) // true

// findIndex 查找数组中第一个 符合条件的元素的index
a.findIndex((v)=>{ return v==3}) // 4 

字符串

let a = "aaabbbccc"
// charAt() 返回指定位置的字符
a.charAt(3) // "b"

// concat() 连接字符串
a.concat("ddd") // "aaabbbcccddd"

// indexOf()  返回字符的索引 不存在返回-1
a.indexOf('b') // 3

// lastIndexOf() 从后搜索返回索引
a.lastIndexOf('b') // 5

// slice() 提取 索引间的字符 并返回
a.slice(2,4) // "ab"

// substr() 提取指定位置指定长度的字符 并返回
a.substr(3,1) // "b"

// substring() 提取一个字符串,end不支持负数
a.substring(3,4) // "b"

// padStart() 
a.padStart(11,"ddd") // "ddaaabbbccc"

// padEnd() 用于尾部补全
a.padEnd(11,"ddd") // "aaabbbcccdd"

// startsWith() 检测字符串以指定字符开始
a.startsWith('a') // true

// endsWith() 检测字符串以指定字符结束。
a.endsWith("a") // false

// split() 把字符串通过制定字符分割成数组
a.split("b") // ["aaa", "", "", "ccc"]

// toLowerCase() 将字符转换成小写
a.toLowerCase() //  "aaabbbccc"

// toUpperCase() 将字符转换成大写
a.toUpperCase() //  "AAABBBCCC"

// trim() //删除字符串前后空格