ES6的常见语法!!
let : 声明变量
不存在变量提前
拥有局部作用域 (只要有{}出现 则只在该{}范围内生效)
(而var只在函数内会产生作用域范围)
不能重复声明
const : 声明常量(常量名从规范上来将 最好所有字母大写)
常量从声明之后 不能再二次赋值 (值无法被改变,只读)
不存在变量提前
不能重复声明
拥有局部作用域
箭头函数:
let abc = (a,b) => { return a + b }
let abc1 = (a,b) => a + b
let abc2 = a => { return a*2 }
let abc3 = a => a*2
箭头函数的this指向定义者(或者说时上下文环境)
不能当做构造函数 (不能实例化)
箭头函数没有 arguements (或者说指向上下文环境)
解构赋值
对象:
let obj = {
name : "zhuiszhu",
age : 18
}
let {age,name} = obj //属性名必须一样 但顺序没有要求
指定默认值:
let {height=188} = obj
给个别名
let {name:nm} = obj
数组
let arr = [1,2,3,4]
let [one,two,four,three] = arr //数组解构 顺序有要求 命名无要求
默认值:
let [one,two,four,three,five=5] //给默认值
解构参数
let obj = {
name : ...,
age : ...
}
function sayHello(obj){
}
确定形参obj为指定对象时 可对其解构
function sayHello({name}){
console.log(name)
}
给别名和默认值于解构赋值一样
注意 在使用箭头函数和解构参数时 必须加上()
let a = obj => {}
let b = ({name}) => {}
以下写法不被允许
let c = {name} => {}
形参默认值
function sayHello(name,age=18){}
展开符
let obj = {
name : "zhuiszhu",
age : 18
}
let newObj = {
...obj,
height : 188
}
newObj将拥有所有obj的属性和方法
类(注意 类名在行业规范类 首字母均大写)
class Xxxx {}
类的继承
class Student extends Man {}
对象的属性的语法糖(简写)
let name = "abc"
let obj = {name:name} ===> let obj = {name}
let obj1 = {
sayHello : function(){
}
}
===>
let obj1 = {
sayHello(){//该种简写方式代表当前函数为普通函数 this依旧和function的this指向相同 并不是箭头函数的上下文环境
}
}
字符串模板
let name = "zhuiszhu"
let text = "hello " + name + "!"
let text1 = `hello ${name}!`
typescript语法(非es6语法)
接口(接口名也最好首字母大写)
interface Yyyy{
name //定义实现该接口的类所必须拥有的属性名
int() //定义实现该结构的类所必须拥有的方法名
}
定义一个类 并实现接口
class Student implements Man{}
ES6的常见语法!!的更多相关文章
- ES6基本常见语法
特色:写法更加优雅,更加像面像对象的编程,其思想和 ES5 是一致的. 箭头函数.this ES6中可以使用 => 作为函数表达形式,极简风格,参数+ => +函数体. var foo = ...
- freemarker(FTL)常见语法大全
[转载]freemarker(FTL)常见语法大全 FreeMarker的插值有如下两种类型:1,通用插值${expr};2,数字格式化插值:#{expr}或#{expr;format} ${boo ...
- PHP. 01. C/S架构、B/S架构、服务器类型、服务器软件、HTTP协议/服务器、数据库、服务器web开发、PHP简介/常见语法、PHPheader()、 PHP_POST/GET数据获取和错误处理
C/S架构 Client/Server 指客户端,服务器 架构的意思 优点:性能性高:可将一部分的计算工作放在客户端上,服务器只需处理出局即可 洁面炫酷,可使用更多系统提供的效果 缺点:更新软件需 ...
- [js高手之路] es6系列教程 - new.target属性与es5改造es6的类语法
es5的构造函数前面如果不用new调用,this指向window,对象的属性就得不到值了,所以以前我们都要在构造函数中通过判断this是否使用了new关键字来确保普通的函数调用方式都能让对象复制到属性 ...
- word宏(macro) 之 注意事项,常见语法和学习地方
宏:计算机科学里的宏(Macro),是一种批量处理的称谓.一般说来,宏是一种规则或模式,或称语法替换 ,用于说明某一特定输入(通常是字符串)如何根据预定义的规则转换成对应的输出(通常也是字符串).这种 ...
- python全栈开发_day14_常见语法糖,递归和匿名函数
一:常见语法糖 1)三元函数(三目函数) a=1 if 3>2 else 2 print(a) #得到返回值:1 2)列表字典推导式 lis=[("a",1),(" ...
- IOS常见语法解惑
由于工作过程中经常需要查看IOS的Objective-C代码,遂把一些常见的.有疑问的OC语法列出,方便之后会看,提升效率. Objective-C中的@语法 @interface告诉编译器,我要声明 ...
- 超好用的Markdown编辑器Typora中的常见语法
目录 下载网址 安装 一.标题 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 二.语法环境 三.单选 四.字体 五.分割符 六.列表 七.图片引入 八.表格 九.超链接 下载网址 正版中 ...
- es6的常用语法
最常用的ES6特性 let, const, class, extends, super, arrow functions, template string, destructuring, defaul ...
随机推荐
- 201871010106-丁宣元 《面向对象程序设计(java)》第六—七周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第六—七周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu- ...
- 【目标检测】SSD:
slides 讲得是相当清楚了: http://www.cs.unc.edu/~wliu/papers/ssd_eccv2016_slide.pdf 配合中文翻译来看: https://www.cnb ...
- CF1234A Equalize Prices
洛谷 CF1234A Equalize Prices Again 洛谷传送门 题目描述 You are both a shop keeper and a shop assistant at a sma ...
- ASP.NET Core 中的 Main 方法
ASP.NET Core 中的 Main 方法 在 ASP.NET Core 项目中,我们有一个名为Program.cs的文件.在这个文件中,我们有一个public static void Main( ...
- js中VO解析
执行环境(环境) 执行环境的用处 执行环境定义了变量或函数有权访问的其他数据,每一个执行环境都存在一个关联的变量对象(VO),代码无法访问,内部解析器会使用它,如果环境为函数,则将函数的AO作为VO, ...
- [LeetCode] 213. House Robber II 打家劫舍之二
You are a professional robber planning to rob houses along a street. Each house has a certain amount ...
- (转)yum只下载不安装软件包
方法一:使用yum的downloadonly插件 步骤: (1) 先安装downloadonly插件 yum install yum-plugin-downloadonly (2)使用–downlo ...
- Visual Studio 调试系列6 监视变量(使用监视窗口和快速监视窗口)
系列目录 [已更新最新开发文章,点击查看详细] 当你进行调试时,可以使用 监视窗口 和 快速监视窗口 来监视变量和表达式. 仅在调试会话期间,这两个窗口才可用. 监视窗口可以在调试时一次显示多 ...
- Gitlab CI/CD
Gitlab CI/CD 前言 纵观人类历史的发展以及三次工业革命,你会发现利用机器来替代部分人力劳动,将重复的工作自动化从而解放生产力都是发展的必然趋势,在软件工程领域也不例外,其中 CI/CD 就 ...
- [转帖]SQL Server 10分钟理解游标
SQL Server 10分钟理解游标 https://www.cnblogs.com/VicLiu/p/11671776.html 概述 游标是邪恶的! 在关系数据库中,我们对于查询的思考是面向集合 ...