// es6
// var b = 10;
// (function b(){
// b=20;
// console.log(4,b)
// })()
// 1.取值
// const obj = {
// a:1,
// b:2,
// c:3,
// d:4,
// e:5,
// }
// const {a,b,c,d,e} = obj||{};
// console.log(a+b)
// const {e:a1} = obj;
// console.log(a1);
// 2.合并数组
// const a = [1,2,3];
// const b = [1,5,6];
// const c = [...new Set([...a,...b])]
// console.log(c)
// const obj1 = {
// a:1,
// b:2
// }
// const obj2 = {
// b:1,
// a:3
// }
// const obj = {...obj1,...obj2};
// console.log(obj)
// 3.拼接字符串
// const name = '小明';
// const score = 59;
// const result = `${name}${score>60?'及格':'不及格'}`
// console.log(result)
// 4.if条件判断
// const condition = [1,2,3,4];
// if(condition.includes(3)){
// console.log(condition)
// }
// if( condition.includes(9) ){
// console.log(true)
// }
// 5.精确搜索
// const a = [1,2,3,4,5];
// const result = a.filter(
// item =>{
// return item === 3
// }
// )
// 性能优化:find方法中找到符合条件的项,就不会继续遍历数组。
// const a = [1,2,3,4,5];
// const result = a.find(
// item =>{
// return item === 4
// }
// )
// console.log(result)
// 6.数组扁平化
// const deps = {
// '采购部':[1,2,3],
// '人事部':[5,8,12],
// '行政部':[5,14,79],
// '运输部':[3,64,105],
// }
// let member = Object.values(deps).flat(Infinity)
// console.log(member)
// 7.获取对象属性值 可选链操作符
// const obj = {
// a:1,
// b:2,
// }
// const a= obj ?.a;
// console.log(a)
// 8.添加对象属性
// let obj = {};
// let index = 2;
// obj[`topic`] = '话题';
// obj[`topic${index}`] = '话题内容';
// console.log(obj)
// 9.空值合并运算符
// const value = "";
// if((value??'') !== ''){
// console.log(true)
// }
// 10.异步函数很常见,经常是用 Promise
const fn1 = () =>{
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(1);
}, 300);
});
}
console.log(fn1)
const fn2 = () =>{
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(2);
}, 600);
});
}
console.log(fn2)
const fn = () =>{
fn1().then(res1 =>{
console.log(res1);// 1
fn2().then(res2 =>{
console.log(res2)
})
})
}
console.log(fn)
console