目录 | |
---|---|
`` | 字符串 |
${} | 占位符的方式,进行字符串拼接 |
Array.from | 将伪数组转成真正的数组 |
find() | 查找符合条件第一个元素,查找条件是return后面的表达式 |
findIndex() | 查找符合条件第一个元素,的下标 |
copyWithin | 截取的一段覆盖另一段 |
Object.assign | 浅拷贝 |
Symbol() | 声明变量 |
set | 声明集合 |
map | 集合映射 |
括起来的叫做字符串。
和传统字符串的区别:
1、传统字符串没有办法换行
2、ECMA6可以通过占位符的方式,进行字符串拼接
${变量/表达式}
var str = "dadadadad
adadadadad";
alert(str);
var str = `dadadadad
adadadadad`;
alert(str);
function showSelf({name, sex = '男', age}){
alert("我叫" + name + ", 我是" + sex + "的,今年" + age + "岁");
}
showSelf({
sex: "女",
name: 'red',
age: 40
})
function showSelf({name, sex = '男', age}){
alert(`我叫${name},我是${sex},今年${age}岁,${10 + 20}`);
}
showSelf({
sex: "女",
name: 'red',
age: 40
})
将伪数组转成真正的数组。
window.onload = function(){
var nodes = document.getElementsByTagName("div");
// alert(nodes.length);
// nodes.push("hello");
nodes = Array.from(nodes);
nodes.push("hello");
alert(nodes);
}
查找符合条件第一个元素,查找条件是return后面的表达式
【注】只要找到符合条件的,循环就终止了
var arr = [10, 20, 30, 40, 50];
var res = arr.find(function(item){
return item > 20;
})
alert(res);
查找符合条件第一个元素,的下标
var arr = [10, 20, 30, 40, 50];
var res = arr.findIndex(function(item){
return item > 20;
})
alert(res);
第一个参数:开始截取的下标
第二个参数:开始替换的下标
第三个参数:终止替换的下标,不包含结束下标。
var arr = [1,2,3,4,5,6,7,8,9,0];
arr.copyWithin(2,6,9);
alert(arr);//1,2,7,8,9,6,7,8,9,0
合并对象
【注】将传入的对象合并,最后生成一个新对象。
浅拷贝:只拷贝最浅一层,具体的数组或者对象没有拷贝
var obj1 = {
a: 10
}
var obj2 = {
b: 20,
a: 30
}
var obj3 = {
c: 40,
d: [10, 20, 30, 40]
}
var obj = Object.assign(obj1, obj2, obj3);
console.log(obj);
obj3.d.push(100);
console.log(obj);
是用来声明变量的,只和自己相等,和其他任何数据都不相等。
【注】是用来,形象化编程。
var a = Symbol();
var b = Symbol();
var c = Symbol(100);
var d = Symbol(100);
var e = Symbol("hello");
var f = Symbol("hello");
var sapphire = Symbol();
var Mateus = Symbol();
var color = sapphire;
switch(color){
case sapphire:
alert("宝石蓝");
break;
case Mateus:
alert("蜜桃红");
break;
}
声明集合 参数部分可以传入数组
集合:
1、无序
2、不重复
let imgs = new Set();
imgs.add(10);
imgs.add(10);
imgs.add(15);
imgs.add("15");
imgs.add(new String("hello"));
imgs.add(new String("hello"));
console.log(imgs);
let imgs = new Set();
imgs.add(10);
imgs.add(10);
imgs.add(15);
imgs.add("15");
imgs.add(new String("hello"));
imgs.add(new String("hello"));
console.log(imgs);
var imgs = new Set([10, 10, "15", 15, "hello"]);
//通过key遍历
for(let item of imgs.keys()){
console.log(item)
}
//通过value遍历
for(let item of imgs.values()){
console.log(item)
}
//通过key和value进行遍历 键和值
for(let item of imgs.entries()){
console.log(item)
}
var arr = [10, 20, 30, 40];
for(let item of arr){
console.log(item);
}
映射
var map = new Map();
map.set("张三", "打铁的");
map.set("李四", "卖猪的");
map.set("王五", "卖豆腐");
//通过键获取值
// alert(map.get("王五"));
//遍历映射
for(let [key, value] of map){
console.log(key, value);
}