set对象
一个类似于数组的对象,但是不包含相同值
1。创建
var set = new Set();
var set2 = new Set([1,2,3]);
var set3 = new Set([1,1,1,2,3,4,4,4,5,6])//会自动过滤掉重复的元素
2。属性
size属性,与数组的length类似
3。方法
add(),向set中添加元素,返回set本身
delete(),删除set中的元素,返回布尔值,表示是否删除成功
has(),查询set中是否含有这个值,返回布尔值
clear(),清空该set
forEach(),与数组的遍历方法相同
数组
1、扩展运算符,可以将数组拆分为都好分割的序列
//将两个数组合并有两种方法
var fn1 = [...arg1,...arg2];
var length2 = arg1.push(...arg2);//返回值为数组的长度
console.log(fn1);
console.log(arg1);
//可以将伪数组转化为数组
var o = {
name:'MuseDash',
price:18,
id:1,
}
var divs = document.querySelectorAll('div');
console.log(divs);
// divs = [...divs];
// console.log(divs);
2、方法
//利用form方法也可以对数组进行转化和赋值
var divs = Array.from(divs);
console.log(divs);
var newarg = Array.from(divs,(item) => item*2);
console.log(newarg);//NaN
var arr3 = [
{
id:1,
name:'刻晴',
},
{
id:2,
name:'砂糖',
}];
var target = arr3.find((item,index) => {
return item.id == 2;
});
var target2 = arr3.find((item,index) => {
return item.id == 3;
});
console.log(target);//砂糖这个对象
console.log(target2);//undefined
//findIndex方法,找到第一个符合条件的成员的位置,如果没有找到则返回-1,用法与find相同
var numbers = [10,20,50];
var target3 = numbers.findIndex((item,index) => {
return item >= 15;
});
var target4 = numbers.findIndex((item,index) => {
return item < 0
})
console.log(target3);
console.log(target4);
//includes方法,查询数组中是否包含给定的值,返回值为布尔类型
var nums = [2,3,4];
var flag1 = nums.includes(2);
var flag2 = nums.includes(5);
console.log(flag1,flag2);
字符串
1、模板字符串,使用`进行定义
特点:
//模板字符串可以解析变量
//可以换行
//可以调用函数,会显示函数的返回结果
var mustr = `flag1的值为${flag1},
target的值为${numbers.findIndex((item) => item >= 15)}`
console.log(mustr);
2、方法
//startWith()方法,判断字符串是否以某字符串开头,返回值为布尔类型
//endsWith()方法,判断某字符串时候以某字符串结尾,返回值为布尔类型
//repeat()方法,将原重复那次,返回一个新字符串,参数为重复的次数
var str5 = "hello world!";
var flag11 = str5.startsWith('hello');
var flag12 = str5.endsWith("!");
var newstr5 = str5.repeat(2);
console.log(flag11,flag12,newstr5);