数组
检测是否为数组
let a=[1,2,3]
Array.isArray(a)
添加删除数组
//在数组末尾添加
a.push(3)
//在数组开头添加
a.unshift(0)
//删除数组最后一个值
a.pop()
//删除数组第一个值
a.shift()
翻转数组及数组排序
let a=[1,2,3,12,22]
//翻转数组
a.reverse()
//数组排序
a.sort() // 按首字母大小排序 输出为[1,12,2,22,3]
a.sort(function(a,b){
return(b-a)//从大到小 降序 输出为[22,12,3,2,1]
return(a-b)//从小到大 升序 输出为[1,2,3,12,22]
})
查找索引值
let a=[1,2,'a',432,123,'a','b','abc']
a.indexOf('a') //值为2 当有多个相同的值时如('a') 值为第一个检索到的索引值
a.indexOf('a',3) // 值为5 3 指从数组索引为3的数(432)开始检索
检测数组中是否包含xx
let a=[1,2,'a',432,123,'a','b','abc']
let b=a.includes('a')//值为true
数组转为字符串
let arr=[1,2,3,4,5]
//toString() 将数组转为字符串 以 , 分隔
a.toString //值为 1,2,3,4,5
//jion('分隔符') 分隔符可自己定义的 默认为 ,
a.join() //此时为 ,分隔 1,2,3,4,5
a.join(' ') //此时为 空格分隔 1 2 3 4 5
拼接数组
let a1=[1,2,3]
let a2=[4,5,6]
let a3=[7,8,9]
//concat 连接2个或多个数组,不影响原数组
let b1=a1.concat(a2,a3)
//扩展运算符合并数组
let b2=[...a1,...a2,...a3]
截取数组
let a1=[1,2,3,4,5,6]
//slice(begin,end) 从begin开始 到end结束 均为索引值 end取不到 不影响原数组
a1.slice(0,4) //值为 [1,2,3,4]
//splice(begin,要删除的个数) 从begin 删除x个数 影响原数组 返回被删除项目的新数组
a1.splice(0,3) // 此时a1=[4,5,6]
let b1=a1.splice(0,3) //b1=a1删除掉的数组中的值 b1=[1,2,3]
字符串
字符串拼接
let a1='ni'
let a2='hao'
//concat 连接2个或多个字符串 效果等同于 '+' +更常用
let b1=a1.concat(a2,a3) //值为nihao
//+
let b2=a1+a2 //nihao
截取字符串
let a1='hello,nihao'
//substr(begin,length) length为要取的个数
let b1=a1.substr(0,5) // 值为hello
//slice(begin,end) begin 开始位置 end结束位置 2者均为索引 end取不到
a1.slice(6,11) //值为nihao
//substring(begin,end)和slice作用相同 但接受负值
a1.substring(5,-5) // 值为hello
替换字符串中的值
let a1='hello,nihao'
//replace(要替换哪个,替换为哪个)替换字符串中的值 只能替换提一个检索到的值
let b1=a1.replace('h','a') //b1='aello,nihao'
将字符串转为数组
let a1='hello,nihao'
//split('分隔符') 默认为 ','
let b1 = a1.split() // b1=['hello','nihao']
let b2 = a1.split('') // b1=['h', 'e', 'l', 'l','o' , ',' , 'n', 'i', 'h' , 'a', 'o']
字符串中字母的大小写转换
let a1 = 'Hello,NiHao'
//toUpperCase() 将字母转为大写
let b1 = a1.toUpperCase() // 'HELLO,NIHAO'
let b2 = a1.toLowerCase() // 'hello,nihao'
遍历数组+字符串
let a='abcd' // let b=['a','b','c','d'] 数组和字符串均可使用以下方法
//for(let k in a ){} a为要遍历地字符串或数组
for(let k in a){
//以下输出 0/a等常量后的 ',' 均为换行
console.log(k) //输出 0,1,2,3 为索引值
console.log(a[k]) // 输出 a,b,c,d
}
//for (let k of a){}
for (let k of a){
console.log(k); //输出为 a,b,c,d
}
对象
对象与字符串间的相互转换
let obj={
name:'zs',
age:18
}
//JSON.stringify(对象) 对象转为字符串格式
let obj1=JSON.stringify(obj)
//JSON.parse(字符串) 字符串转为对象格式
//要转换的字符串必须为对象格式 如{属性名1 : 变量 , 属性名2 : 变量}
let obj2=JSON.parse(obj1)