ES6数组与字符串

1.数组的基本方法

基本方法解释
push末尾添加
pop删除末尾元素
shift在开头删除元素
unshift在开头添加元素
sort排序
concat合并数组
reverse倒序
splice删除/添加/替换数组的某一部分
join把数组转化为字符串

2.数组的复杂方法

复杂方法 (接受一个函数作为参数)解释
forEach循环数组
map映射
filter过滤
some只要有一项符合要求就返回true
every每一项都符合返回true
find查找符合条件的元素返回的是元素本身 找不到返回undefined
findIndex查找符合条件元素的下标,找不到返回-1

3.ES6新增数组

fill 填充替换数组
{
let arr=[1,2,3,4];
console.log( arr.fill(0,1,2))
}
Array.from() 把类数组转化为数组
let arr = Array.from({
  0: '1',
  1: '2',
  2: 3,
  length: 3
});
console.log(); // ['1', '2', 3]
Array.of 定义数组
let arr=Array.of(1,2,3,"a","b");
console.log(arr);
flat 把多维数组转化为一对数组
// An highlighted block
var foo = 'bar';
copyWithIn 拿数组的某一部分替换数组的另一部分
console.log([1, 2, 3, 4].copyWithin(0,2,4)); // [3, 4, 3, 4]
includes 判断数组里是否有某一项 返回布尔值

includes与indexOf的用法一样,只是返回值不一样

keys 拿到数组的所有键值
for(let key of ['a', 'b'].keys()){
    console.log(key);
}
// 0
// 1
 
// 数组含空位
console.log([...[,'a'].keys()]); // [0, 1]
values 拿到数组的所有value值

values key两个方法只能在循环里用

et arr=[3,4,5];
console.log(arr.values().next())

4.字符串的方法

字符串的方法解释
toLowerCase转化为小写
toUpperCase转化为大写
split分割为数组
repeat重复字符串
search查找字符
substring/substr截取字符串
toString/string转化为字符串
replace替换字符
indexOf查找下标
lastIndexOf从最后一位开始查找下标
chartAt查找某一位上的值
concat合并字符串

5.ES6新增的字符串

includes 判断是否含有某个字符
let str="hello";
console.log(str.includes("h"));
padStart 补全开头
console.log("h".padStart(5,"o"));  // "ooooh"
padEnd 补全结尾
console.log("h".padEnd(5,"o"));    // "hoooo"
startswith 是否以谁为开头
let string = "apple,banana,orange";
string.startsWith("apple");    // true
或
string.startsWith("banana",6)  // true
endswith 是否以谁为结尾
let string = "apple,banana,orange";
string.endsWith("apple");      // false

includes(),startsWith()与endsWith()都可以接受两个参数,需要搜索的字符串,和可选的搜索起始位置索引

6.ES6新增循环 for-of

在for-of循环里可以使用break和container,for-of也可以循环json

var arr=[1,2,3,4];
for (let item of arr) {
    console.log(item);  
}

7.set与map

set是一种新的数据类型(结构)是一个类数组,成员都是唯一的。

set去重

let set1=new Set(arr);
console.log(set1);
let res=Array.from(set1);//array.from把类数组变成数组
let  res=[...set1]//扩展运算符可以把类数组变成数组
console.log(res);

set结构实例化的方法

{
let arr=[12,34,12,34,56];
let set1=new Set(arr);
console.log(set1.add("aaa"));//往set里添加值
console.log(set1)

set1.delete(12);//删除set的某个值
console.log(set1);

console.log( set1.has("aaa")) //判断是否含有某个值

//    set1.clear();//清空所有的值
//    console.log(set1)

set1.forEach((item)=>{
    console.log(item);
})
// set1在forEach的时候不能拿到下标
}

map结构是一种类似于json的结构
map与json的区别

mapjson
key值可以是任何类型key值只能是字符串
let fun1=()=>{
    console.log(111)
}
let map1=new Map()
map1.set(2,"aa");
map1.set(fun1,"bb")
console.log(map1.get(fun1));
// 只能通过set方法和get方法设置值和获取值
console.log(map1.has(3));//判断是否含有某个key值
// map1.delete(fun1);
// console.log(map1)
// map1.clear()//清除所有的
map1.forEach((item,key)=>{
   // console.log(item,key)
})
// foreach可以循环map结构 item是value值 key是键值

// for(var item of map1.keys()){
//     console.log(item)
// }
// keys()方法能拿到所有键值然后进行循环使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值