前言
本期内容是对 ES6 内容的简单总结;
正文
let 声明变量:
'use strict';
let test="test1";
let test="test2";
function test(){
let a=1;
if(a>0){
let b=2;
}
console.log(b);
}
test();
const 声名只读变量:
const a="no change";
const aa=[1,2,3];
aa=[4,5,6];
aa[1]=0;
Object.freeze(对象) 冻结数据:
const obj={
name:"zhao"
}
obj.name="zhou";
console.log(obj.name);
Object.freeze(obj);
obj.name="zhao";
console.log(obj.name);
 函数的简洁命名方式:
const test1 = function(){
console.log("test1");
}
const test2 = () => {
console.log("test2");
}
const test3 =function t3(){
console.log("test3");
}
const test4 =() => "test4";
test1();
test2();
test3();
console.log(test4());
console.log(test1);
console.log(test2);
console.log(test3);
console.log(test4);

带参数的简洁命名函数:
const test = (a,b) => {
return a+b;
}
console.log(test(1,2));
 设置函数默认值:
const test = (a=1,b=2) =>{
return a+b;
}
console.log(test());
console.log(test(2,2));
 使用 rest格式接受多个值:
const test = (...arr) =>{
let sum=0;
for(let i=0;i<arr.length;i++){
sum+=arr[i];
}
return sum;
}
console.log(test(1,2,3,4,5));
 使用 spread 展开运算符:
const test1=[1,2,3,4,5];
var test2=[];
test2=[...test1];
console.log(test2);
 获取对象属性的方法:
const test={
name:"zhao",
like:"python"
}
var name=test.name;
var like=test.like;
var {name,like}=test;
var {name:na,like:li}=test;
const test_1{
name:"zhao",
like:{
first:"python",
second:"java"
}
}
var {like:{first:bestlike}}=test_1;
结构运算符的妙用:
const [a, b, ...arr] = [1, 2, 3, 4, 5, 7];
console.log(a, b);
console.log(arr);
 解构值作为参数值的简写:
const stats = {
max: 20,
min: 10
};
const test_1 = (obj) => (obj.max+obj.min)/2;
const test_2 = ({max,min}) => (max+min)/2;
console.log(test_1(stats));
console.log(test_2(stats));
 使用模板字样创建字符串:
const people={
name:"zhao",
like:"java"
}
const str=`${people.name}like${people.like}`;
console.log(str);
 利用函数创建对象:
const test_1 =(name,like) =>{
return {
name:name,
like:like
}
}
const test_2 =(name,like) =>({
name:name,
likes:like
});
const test_3 =(name,like) => ({name,like});
console.log(test_1("zhao","C++"));
console.log(test_2("qian","python"));
console.log(test_3("sun","java"));
 在对象中定义函数:
const people_1 = {
name:"zhao",
test_1:function(){
console.log(`${this.name}`);
}
}
const people_2 = {
name:"qian",
test_2(){
console.log(`${this.name}`);
}
}
people_1.test_1();
people_2.test_2();
 利用class创建类:
class People {
constructor(name) {
this._name = name;
}
get pname() {
return this._name;
}
set pname(updatedName) {
this._name = updatedName;
}
}
const person = new People('zhao');
console.log(person.pname);
person.pname = 'qian';
console.log(person.pname);
 在HTML中创建脚本:
<script type="module" src="#"></script>
导出.js文件的函数:
export const sum =(a,b) =>(a+b);
const sum =(a,b) =>(a+b);
export {sum};
在.js中导入其他js的代码:
import {sum} from './XXXXX.js';
import * from './XXXXX.js';
import * as aaa from 'XXXXX.js';
设置一个默认导出:
export default function sum(x, y) {
return x + y;
}
export default function(x, y) {
return x + y;
}
导入一个默认导出:
import sum from './XXXXX.js';
补充
上一期的内容;
typeof的使用:
typeof 3;
typeof "3";
查找对象是否有相应属性:
const obj ={
name:"zhao"
};
console.log(obj.hasOwnProperty("name"));
console.log(obj.hasOwnProperty("like"));

|