美文网首页
JS字符串数组常用方法

JS字符串数组常用方法

作者: 苹果咏 | 来源:发表于2020-04-13 17:04 被阅读0次

字符串

var str = "How are you doing today?"
var str1 = "    How are you doing today?    "

// split() 方法用于把一个字符串分割成字符串数组 
str.split(" ")   // ["How", "are", "you", "doing", "today?"]
str1.split(/\s+/) 

// reverse() 方法用于颠倒数组中元素的顺序,注意:只能用于数组
str.split(" ").reverse()   // ["today?", "doing", "you", "are", "How"]

// trim() 方法用于删除字符串的头尾空格。
str1.trim()    //"How are you doing today?"

// join() 方法用于把数组中的所有元素放入一个字符串
str.split(" ").join(" ")  // "How are you doing today?"
strr.split("").reverse().join("")  //"?yadot gniod uoy era woH"  字符串反转
str.split('o').length-1  //4   获取字符串中o的个数

//concat(字符串1,字符串2,...);返回的是拼接之后的新的字符串
str.concat(str1)     //"How are you doing today?    How are you doing today?"    

//toLocaleLowerCase();toLowerCase();转小写
str.toLocaleLowerCase() //"how are you doing today?"
str.toLowerCase() //"how are you doing today?"

//toLocaleUpperCase()转大写;toUpperCase();转大写
str.toLocaleUpperCase()  //"HOW ARE YOU DOING TODAY?"
str.toUpperCase()   //"HOW ARE YOU DOING TODAY?"

//indexOf(要找的字符串,从某个位置开始的索引);返回的是这个字符串的索引值,没找到则返回-1
str.indexOf("Hello") //0
str.indexOf("are",5) //-1    从第五个字符开始索引

//lastIndexOf(要找的字符串);从后向前找,但是索引仍然是从左向右的方式,找不到则返回-1
str.lastIndexOf("How")  //0

//charAt(索引),返回值是指定索引位置的字符串,超出索引,结果是空字符串
str.charAt(0)  //"H"

//substring(开始的索引,结束的索引),substring将负参数都直接转换为0,substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。不包含结束的索引的字符串
str.substring(0,5)  //"How a"
str.substring(-5)   //"How are you doing today?"
str.substring(8,1)  //"ow are "

//slice(开始的索引,结束的索引); 从索引5的位置开始提取,到索引为10的前一个结束,没有10,并返回这个提取后的字符串.不包含结束的索引的字符串
str.slice(0,5)  //"How a"
str.slice(-5)  //"oday?"
str.slice(8,2)  //""

//substr(起始位置,长度);返回的是截取后的新的字符串
str.substr(1,5)  //"ow ar"

//replace("要替换的字符串","替换后的字符串") 方法用另一个值替换在字符串中指定的值,默认只替换首个匹配,如需全局替换,可用正则表达式
str.replace("How","What")  //"What are you doing today?"
str2 = "HOW HOW HOW NI YOU"
str2.replace("HOW","WHAT")// "WHAT HOW HOW NI YOU"
str2.replace(/HOW/g,"WHAT")// "WHAT WHAT WHAT NI YOU"

//十进制ASCII码转换成字符
String.fromCharCode(65) // A
String.fromCharCode(90) // Z
String.fromCharCode(97) // a
String.fromCharCode(122) // z
//或者
String.fromCodePoint(65) // A
String.fromCodePoint(90) // Z
String.fromCodePoint(97) // a
String.fromCodePoint(122) // z

//字符转换成十进制ASCII码
'A'.charCodeAt() // 65
'a'.charCodeAt() // 97
'Z'.charCodeAt() // 90
'z'.charCodeAt() // 122

//复制字符串
"a".repeat(3) // "aaa"

/// 记录字符串每个字母出现的次数
for (let element of text) {
    map[element] = (map[element] || 0) + 1 
}

// 将map对象中 balon 字母出现的次数存到数组中
for (let index of "balon") {
        arr.push(map[index] || 0)   
}

参考:js字符串方法

数组

image.png
js数组方法
//添加删除数组元素
push()  //向数组的末尾添加一个或更多元素,并返回新的长度。
unshift()  //向数组的开头添加一个或更多元素,并返回新的长度。

pop()  //删除并返回数组的最后一个元素
shift()  //删除并返回数组的第一个元素

splice() //既能删除也能添加
splice(0,1) //删除第一个元素。第一项的位置和要删除的项数

//添加
splice(起始位置,要删除的项数,要插入的项)
splice(2,0,"red","blue")  //从当前数组位置2开始插入字符串

//替换
splice(起始位置,要删除的项数,要插入的项)
splice(2,1,"red","blue")   //删除位置2的项,再从位置2插入

//ES6取数组最小值
minNum = Math.min(...numList)
//获取最大值的位置
numList.indexOf(Math.max.apply(Math, numList))

添加能添加多个,删除只能删一个

数组迭代方法

var numbers = [12,43,2,4,3,2,32,5,3,2,43]

every()  //对数组中每一项运行给定的函数,每一项都返回true,才返回true
var everyReslt = numbers.every(function(item,index,array){
    return (item>2)
})
alert(everyReslt)  //false

filter()  //返回符合条件的数组
var filterReslt = numbers.filter(function(item,index,array){
    return (item>2)
})
alert(filterReslt)  //[12, 43, 4, 3, 32, 5, 3, 43]

some()  //对数组中每一项运行给定的函数,任意一项返回true,就返回true
var someReslt = numbers.some(function(item,index,array){
    return (item>2)
})
alert(someReslt)  //true

map() //对数组中每一项运行给定函数,返回每次函数调用结果组成的数组
var mapReslt = numbers.map(function(item,index,array){
    return item * 2
})
alert(mapReslt)  //[24, 86, 4, 8, 6, 4, 64, 10, 6, 4, 86]

forEach() //对数组中每一项运行给定函数,遍历数组中每一项,这个方法没有返回值
var forEachReslt = numbers.forEach(function(item,index,array){
    // 执行某些操作
})

数组缩小方法

var nums = [1,2,3,4,5]

reduce()  //从左到右遍历数组,构建一个最终返回的值。参数为(前一个值,当前值,项的索引,数组对象)
var sum = nums.reduce(function(prev,cur,index,array){
    return prev + cur
})
alert(sum)   //15


reduceRight()  //从右到左遍历数组,构建一个最终返回的值。参数为(前一个值,当前值,项的索引,数组对象)
var sum = nums.reduceRight(function(prev,cur,index,array){
    return prev + cur
})
alert(sum)   //15
// new Set()去重
var aa = "efweeeewefwefew"
new Set(aa)  //{"e", "f", "w"}

对象

// 对象获取第一个key和值
Object.keys(obj)[0]
Object.values(obj)[0]

//修改对象值
obj[Object.keys(obj)[0]] -= 1

 //遍历这个对象
for(var key in obj) {
    console.log(key + "这个字母出现了" + obj[key] + "次");
}

//对象的长度
Object.keys(obj).length

相关文章

  • js基础了解

    js数组常用遍历方法使用: js数组常用操作方法使用: 基本逻辑运算: 基本字符串操作方法:

  • js 常用方法总结

    字符串的常用属性,概览 Array对象的方法; 详细js数组常用方法大全

  • 初识javascript

    js字符串 数组 数组字面量表达方式(推荐) 数组的常用方法push(),pop(),unshift(),shif...

  • js中字符串和数组的常用方法

    字符串的常用方法 数组的常用方法

  • JavaScript 字符串

    js字符串,js字符串的概述和声明,js字符串的特性,js字符串的常用方法,js字符串的拓展方法,js字符串的案例...

  • 数组常用方法

    数组常用方法 一、js数组常用方法: 1、join() Array.join() 方法将数组中所有元素都转换成字...

  • JS字符串数组常用方法

    字符串 参考:js字符串方法 数组 添加能添加多个,删除只能删一个 数组迭代方法 数组缩小方法 对象

  • 2022-03-16

    js常用方法(数组、字符串) js的四种排序方法 你知道v-model的原理吗?说说看 为什么在v-for中的ke...

  • JavaScript数组常用方法

    目录 JS 数组常用API常用属性常用方法常见方法语法解释from方法isArrayconcateveryfill...

  • Java Script 常用数组方法(不包含数组迭代方法)

    一、数组常用方法 1、数组转为字符串 Array.toStriing() 示例: 2、数组转为字符串 Array....

网友评论

      本文标题:JS字符串数组常用方法

      本文链接:https://www.haomeiwen.com/subject/yuigmhtx.html