<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>

一些基础的ES6 语法的更多相关文章

  1. 把JavaScript代码改成ES6语法不完全指南

    目录 * 核心例子 * 修改成静态变量(const)或块级变量(let) * 开始修改 * 疑问解释(重复定义会发生什么) * 疑问解释(let的块级作用域是怎样的) * 疑问解释(const定义的变 ...

  2. Vue基础之es6

    什么是ECMAScript,以及es6的诞生? 1997年 ECMAScript 1.0 诞生 1999年12月 ECMAScript 3.0诞生,它 是一个巨大的成功,在业界得到了广泛的支持,它奠定 ...

  3. Vue基础(ES6)

      起步 1.扎实的HTML/CSS/Javascript基本功,这是前置条件. 2.不要用任何的构建项目工具,只用最简单的<script>,把教程里的例子模仿一遍,理解用法.不推荐上来就 ...

  4. ES6语法知识

    let/const(常用) let,const用于声明变量,用来替代老语法的var关键字,与var不同的是,let/const会创建一个块级作用域(通俗讲就是一个花括号内是一个新的作用域) 这里外部的 ...

  5. 在Node中使用ES6语法

    Node本身已经支持部分ES6语法,但是import export,以及async await(Node 8 已经支持)等一些语法,我们还是无法使用.为了能使用这些新特性,我们就需要使用babel把E ...

  6. WebStorm ES6 语法支持设置

    ECMAScript 6是JavaScript语言的下一代标准,已经在2015年6月正式发布了.Mozilla公司将在这个标准的基础上,推出JavaScript 2.0.ES6的目标,是使得JavaS ...

  7. WebStorm ES6 语法支持设置和ES6语法的JS文件编译为ES5语法文件

    ECMAScript 6是JavaScript语言的下一代标准,已经在2015年6月正式发布了.Mozilla公司将在这个标准的基础上,推出JavaScript 2.0.ES6的目标,是使得JavaS ...

  8. es6语法重构react代码

    1.使用React.Component创建组件,需要通过在constructor中调用super()将props传递给React.Component.另外react 0.13之后props必须是不可变 ...

  9. vue 2.0 无法编译ES6语法

    # vue2.0 webpack 无法编译 ES6 语法 之前在使用 vue 1.x 时用 vue-loader@8.0.0 版本可以正常打包vue的代码,包括ES6语法也能正常转为ES5语法,但是当 ...

随机推荐

  1. Myabtis中批量更新update多字段

    在mybatis中批量更新多个字段 推荐使用如下操作: 方式1:在Dao层接口中: void updateBatch(@Param("list")List<Student&g ...

  2. Codeforces Round #427 (Div. 2) - D

    题目链接:http://codeforces.com/contest/835/problem/D 题意:给定一个字符串,定义kth回文是左半部分等于右半部分,并且左半部分和右半部分都是(k-1)th回 ...

  3. 【学习】019 SpringBoot

    一.SpringBoot介绍 1.1.SpringBoot简介 在您第1次接触和学习Spring框架的时候,是否因为其繁杂的配置而退却了?在你第n次使用Spring框架的时候,是否觉得一堆反复黏贴的配 ...

  4. WPF导出发布安装包,无法验证发行者解决办法

    右击工程项目点发布->完成 此时在工程目录下生成了安装文件setup.exe 同时又在工程下生成了临时证书WpfApp1_TemporaryKey.pfx 如果此时强行安装会弹出如下警告 接下来 ...

  5. 原创——Nginx基础

    Nginx基础 一.Nginx概述: Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx ...

  6. Node.js 版本管理工具——nvm

    日常项目开发中,有些项目可能基于node  V10 或者 V8 不同的版本: 如果我们手动安装卸载node,这样是不友好. 先放上作者的博客地址 : https://www.cnblogs.com/g ...

  7. linux运维、架构之路-rpm定制、本地yum仓库搭建

    一.定制rpm包 1.环境 [root@m01 ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@m01 ~]# uname - ...

  8. [HTML]时钟

    <div class="clock" id="clock"> <!-- 原点 --> <div class="origi ...

  9. Ubuntu 16.04下使用docker部署ceph集群

    ceph集群docker部署 通过docker可以快速部署小规模Ceph集群的流程,可用于开发测试. 以下的安装流程是通过linux shell来执行的:假设你只有一台机器,装了linux(如Ubun ...

  10. 【bzoj1398】Vijos1382寻找主人 Necklace

    *题目描述: 给定两个项链的表示,判断他们是否可能是一条项链. *输入: 输入文件只有两行,每行一个由0至9组成的字符串,描述一个项链的表示(保证项链的长度是相等的). *输出: 如果两条项链不可能同 ...