<script>
window.onload = function () {
//---------------------------let-----------------------------------
//ES5
//var name = 'zach';
//while (true) {
// var name = 'obama';
// console.log(name);
// break;
//}
//console.log(name);
//ES6 学习篇之let(使用场景 当需要使用到块级作用域的时候使用let 来修饰变量而在ES5中只有全局作用域和函数作用域)
//let name2 ='zach';
//while(true){
// let name2='obama';
// console.log(name)
// break
//}
//console.log(name2)
//引用场景之二
//var b=[];
//for (var i = 0; i < 10; i++) {
// b[i]=function(){
// console.log(i);
// }
//}
//b[6]();
//es6 语法
//var a=[];
//for (let i = 0; i < 10; i++) {
// a[i]=function(){
// console.log(i);
// }
//}
//a[6]();
//ES5
//var clickBox=document.querySelectorAll(".clickbox");
//for (var i = 0; i < clickBox.length; i++) {
// clickBox[i].onclick=function(){
// console.log(i);
// }
//}
//ES6
//var clickBox=document.querySelectorAll(".clickbox");
//for (let i = 0; i < clickBox.length; i++) {
// clickBox[i].onclick=function(){
// console.log(i);
// }
//}
//-------------------------------const------------------------------
//也用来声明变量,但是声明的是常量。一旦声明,常量的值就不能改变。
//const PI =Math.PI;
//PI=15
//-------------------------------------class- extends -super()---------------------------------
//class Person {
// constructor(){
// this.type='person'
// }
// says(say){
// console.log(this.type+"says"+say);
// }
//}
//let person =new Person();
//person.says("hello");
//Class之间可以通过extends关键字实现继承
//super关键字,它指代父类的实例(即父类的this对象)。
//子类必须在constructor方法中调用super方法,否则新建实例时会报错。
//这是因为子类没有自己的this对象,而是继承父类的this对象,然后对其进行加工。
//如果不调用super方法,子类就得不到this对象。
//class Student extends Person{
// constructor(){
// super();
// this.type = 'cat'
// }
//}
//let student=new Student();
//student.says("hello");
//语法糖 匿名函数的写法
setTimeout(function (i){
return i+;
},);
var i=;
//(i) => i + 1 注意这里不要加分号
setTimeout ((i) => i + ,);
//setTimeout ((i) => console.log(i + 1),1000);
//当我们使用箭头函数时,函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。
//class Person {
// constructor(){
// this.type='ren'
// }
// says(say){
// setTimeout(()=>{console.log(this.type+"says"+say)},1000)
// }
//}
//var person=new Person();
//person.says('hi');
//----------------------template string---占位string--------------------------
// var basket={};
// basket.count=1;
// basket.onSale='hello';
// //这里用的是反引号` esc 下面那个键
// $("#result").append(`
//There are <b>${basket.count}</b> items
// in your basket, <em>${basket.onSale}</em>
// are on sale!`);
//------------------------destructuring----------------------
//let cat ='ken';
//let dog= 'lili';
//let zoo={cat:cat,dog:dog};
//console.log(zoo);
//ES6
//let cat ='ken';
//let dog='lili';
//let zoo={cat,dog};
//console.log(zoo);
//let dog ={type:'animal',many:2}
//let {type,many}=dog
//console.log(type,many)
//---------------------------------default, rest-------------------
//给函数赋值默认参数
function animal(type = 'cat'){
console.log(type)
}
animal();
}
</script>