Day03-前端技术es6

es6学习资料:http://es6.ruanyifeng.com/
es6菜鸟教程:https://www.runoob.com/w3cnote/es6-tutorial.html

一、ECMAScript 6 简介

Es6是一套标准,一套规范,而JavaScript就是遵循了这套标准的一个实现。
官方解释:ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。

1、ECMAScript 和 JavaScript 的关系

要讲清楚这个问题,需要回顾历史。1996 年 11 月,JavaScript 的创造者 Netscape (网景)公司,决定将 JavaScript 提交给标准化组织 ECMA,希望这种语言能够成为国际标准。次年,ECMA 发布 262 号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript,这个版本就是 1.0 版。

因此,ECMAScript 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现(另外的 ECMAScript 方言还有 Jscript 和 ActionScript)

2、ES6 与 ECMAScript 2015 的关系

ECMAScript 2015(简称 ES2015)这个词,也是经常可以看到的。它与 ES6 是什么关系呢?
在这里插入图片描述

2011 年,ECMAScript 5.1 版发布后,就开始制定 6.0 版了。因此,ES6 这个词的原意,就是指 JavaScript 语言的下一个版本。

ES6 的第一个版本,在 2015 年 6 月发布,正式名称是《ECMAScript 2015 标准》(简称 ES2015)。

2016 年 6 月,小幅修订的《ECMAScript 2016 标准》(简称 ES2016)如期发布,这个版本可以看作是 ES6.1 版,因为两者的差异非常小,基本上是同一个标准。根据计划,2017 年 6 月发布 ES2017 标准。

因此,ES6 既是一个历史名词,也是一个泛指,含义是 5.1 版以后的 JavaScript 的下一代标准,涵盖了 ES2015、ES2016、ES2017 等等,而 ES2015 则是正式名称,特指该年发布的正式版本的语言标准。本书中提到 ES6 的地方,一般是指 ES2015 标准,但有时也是泛指“下一代 JavaScript 语言”。

二、基本语法

1、let声明变量

<script>
{
    //var 声明的变量没有局部作用域
    //let 声明的变量 有局部作用域
    var a = 0;
    let b = 1;
}

console.log(a)//0
console.log(b)//Uncaught ReferenceError: b is not defined
</script>

在这里插入图片描述

<script>
    //var 可以声明多次
    //let 只能声明一次
    var m = 1;
    var m = 2;
    let n = 3;
    let n = 4;
    console.log(m);//2
    console.log(n);//Identifier 'n' has already been declared
</script>

2、const声明常量(只读变量)

<script>
	//1、声明之后不允许改变
    const PI = "3.1415926";
    PI=3
    console.log(PI); //Uncaught TypeError: Assignment to constant variable.
	
	//2、一旦声明必须初始化,否则会报错
	const MY_AGE //Missing initializer in const declaration
</script>

3、结构赋值

结构赋值是对赋值运算符的扩展。

他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。

在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。

3.1、数组结构

<script>
    //传统写法
    let a = 1,b = 2,c = 3
    console.log(a,b,c)

    //es6写法
    let [x,y,z] = [10,20,30]
    console.log(x,y,z)
</script>

在这里插入图片描述

3.2、对象结构

<script>
    //定义对象
    let user = {"name":"user","age":20}

    //传统从对象里面获值
    let name1 = user.name
    let age1 = user.age
    console.log(name1+"=="+age1)

    //es6获取对象值
    let {name,age} = user//注意:结构的变量必须是user的属性
    console.log(name+"***"+age)
</script>

在这里插入图片描述

4、模板字符串

<script>
    //1、使用`符号实现换行
    let str1 = `Hello,
    es6 demp example!`
    // console.log(str1)

    //2 在`符号里面使用表达式获取变量值
    let name = "Mike"
    let age  =20

    let str2 = `hell ,${name},age is ${age+1}`
    // console.log(str2)

    //3在`符号调用方法
    function f(){
        return "Hello f"
    }

    let str3 = `demo,${f()}`
    console.log(str3)
</script>

控制台输出:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、声明对象

<script>
    const name = "lucy"
    const age = 12

    //传统方式定义对象
    const p1 = {name:name,age:age}
    //console.log(p1)

    //es6定义变量
    const p2 = {name,age}
    console.log(p2)

</script>

上述两种方式都可以实现输出:
在这里插入图片描述

6、定义方法简写

<script>
    //传统方法
    const person1 = {
        sayHi:function(){
            console.log("Hi")
        }
    }
    //person1.sayHi();//Hi


    //es6
    const person2 = {
        sayHello(){
            console.log("hello")
        }
    }
    person2.sayHello();
</script>

在这里插入图片描述
在这里插入图片描述

7、对象拓展运算符

拓展运算符(…)用于取出参数对象所有可遍历属性然后拷贝到当前对象。

<script>
    //1、拷贝对象
    let person1 = {name:"Amy",age:15}
    let someone = {...person1}
    //console.log(someone)

    //合并对象
    let age = {age:15}
    let name = {name:"Tom"}
    let person2 = {...age,...name}
    console.log(person2)
</script>

在这里插入图片描述
在这里插入图片描述

8、箭头函数

箭头函数提供了一种更加简洁的函数书写方式。基本语法是:
参数 => 函数体

<script>
    //1、传统方式创建方法
    var f1 = function(a){
        return a
    }
    //console.log(f1(1))

    //es6写法
    var f2 = a =>a
    //console.log(f2(2))


// 当箭头函数没有参数或者有多个参数,要用 () 括起来。
// 当箭头函数函数体有多行语句,用 {} 包裹起来,表示代码块,
// 当只有一行语句,并且需要返回结果时,可以省略 {} , 结果会自动返回。
    //2、复杂一点方法
    var f3 = function(a,b){
        return a+b
    }
    //console.log(f3(1,2))

    
    // 前面代码相当于:
    var f4 = (a,b) => a+b
    console.log(f4(2,2))
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: cesium-popup-es6是一个基于ES6语法编写的Cesium.js的弹窗组件,用于在Cesium地图上显示自定义的弹窗内容。 这个组件主要包含了以下几个部分: 1. Popup类:这是弹窗的主要类,负责创建和管理弹窗的各种属性和方法。通过使用Popup类,可以很方便地在地图上创建弹窗,并设置弹窗的位置、大小、内容等。 2. 事件监听:cesium-popup-es6还提供了一些事件监听的方法,可以在弹窗的打开、关闭以及其他交互操作时进行相应的处理。例如,可以监听鼠标点击事件来关闭弹窗,或者监听地图的移动事件来更新弹窗的位置。 3. 样式定制:该组件允许用户通过设置自定义的CSS样式来定制弹窗的外观和风格。这使得用户可以根据自己的需要来修改弹窗的颜色、字体、边框等样式属性,从而实现个性化的弹窗显示效果。 4. 兼容性:cesium-popup-es6能够很好地与Cesium.js的其他功能和插件进行集成,同时对不同的浏览器和设备也具备良好的兼容性。这意味着无论是在PC端还是移动端,无论是在Chrome还是在Safari等浏览器上,cesium-popup-es6都能够正常运行。 总的来说,cesium-popup-es6文档提供了关于如何使用和定制这个弹窗组件的详细说明,方便开发者在Cesium.js地图项目中加入自定义的弹窗功能。无论是展示地理信息、交互操作还是其他相关需求,cesium-popup-es6都能够帮助开发者实现一个易于使用和美观的弹窗效果。 ### 回答2: cesium-popup-es6 是一个基于 Cesium.js 的弹出窗口组件,该组件使用 ES6 编写。它为用户提供了在 Cesium 场景中高度可定制的弹出窗口功能。 组件的文档详细介绍了 cesium-popup-es6 的使用方法和各个配置项的说明。首先,你需要通过 npm 或者其他构建工具下载并引入该组件。然后,在你的代码中创建一个 Popup 实例并传入相应的参数,包括弹出窗口的内容、位置、大小、样式等。 文档中还介绍了组件的主要功能,包括弹出窗口显示和隐藏的方法,以及与 Cesium 场景的交互。你可以通过调用 show 方法来显示弹出窗口,通过调用 hide 方法来隐藏弹出窗口。组件还提供了许多配置项,例如你可以自定义弹出窗口的样式、位置以及与其它元素的交互等。 文档中也提供了丰富的示例代码,以帮助用户更好地理解和使用 cesium-popup-es6 组件。这些示例代码覆盖了各种场景,包括在固定位置显示弹出窗口、在鼠标点击位置显示弹出窗口等。 总的来说,cesium-popup-es6 文档提供了详细的使用说明和示例代码,帮助用户了解和使用该弹出窗口组件。用户可以根据自己的需求进行定制,实现丰富多样的弹出窗口效果。 ### 回答3: cesium-popup-es6 是一个基于ES6语法的Cesium.js库的文档。 该文档主要用于指导开发者在使用cesium-popup-es6库时的操作步骤和相关功能的使用方法。 文档的目录结构清晰明了,按照功能模块进行分类,方便开发者快速找到需要的信息。 在文档的开头部分,首先介绍了cesium-popup-es6的基本概述,包括其功能特点和适用场景,帮助开发者了解该库的作用和优势。 接下来,文档详细介绍了cesium-popup-es6的安装和配置步骤。通过简明的指导,开发者可以快速将该库引入到自己的项目中,并进行相应的配置。 然后,文档详细说明了cesium-popup-es6库的各种功能和使用方法。比如,如何创建和定位弹出窗口、如何设置窗口内容和样式、如何捕获窗口的事件等等。每一项功能都给出了具体的代码示例和详细的说明,方便开发者理解和应用。 文档还提供了一些常见问题的解答和一些建议的最佳实践,帮助开发者在使用cesium-popup-es6库时避免一些常见的问题和错误。 最后,文档附带了一些附录,包括cesium-popup-es6的API参考和一些相关的资源链接,方便开发者查阅进一步的信息和深入理解该库。 总之,cesium-popup-es6 文档是一份详尽而全面的文档,对于开发者学习和使用cesium-popup-es6库非常有帮助,可以提高开发效率并简化开发过程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值