当前位置: 首页 > news >正文

ES6学习记录—自己记录一直更新版

1. 什么是ECMA

全称:European computer manufacturers association欧洲计算机制造联合会;

2、它的标准名单中的:ECMA — 262脚本语言的规范:规范化脚本语言,叫ECMAScript ( 一定要记住);像ES5 ES6就是这样来的,但是ES5 、ES6不能单单的看成是一门语言,或者说ES*是一种规范一种标准。

3、编程语言:可以看成两个大类:
编译型 和 解释型 :两者没太大区别,只是翻译的时间长短的区别,两者都要经过翻译的过程;
编译型:就是将源码通过编译器编译成机器语言,在变成可以在某平台上可以执行的文件(可执行文件);
解释型:就是将源码通过解释器,解释一行就执行一行;
两者优缺点:解释型语言不需要根据不同的系统(window\mac\linux)平台进行移植(只要系统里有相应的解释器,就可以运行),而编译型反之(编译型在window编译的可执行文件就只适用于window);编译型的编译速度比解释型语言稍微快一点(在大程序里用编译型的好一点);
.java -> javac ->.class -> JVM解释执行

c++ .cpp源码 -> 编译器 -> .s汇编 -> 汇编器 -> .obj目标代码 -> 链接器 -> 可执行文件
脚本语言 -> 脚本引擎 -> 解释器
前端 后端
JavaScript客户端脚本 php服务端脚本

2.什么是ECMASpript

ECMASpript 是由 ECMA 国际通过ECMA-262 标准化的脚本程序设计语言 ;
ECMA 国际制定了许多标准,而ECMA-262只是其中的一个;

3. let —— 块儿级作用域 全局,函数,eval

就是在{}里的代码才有效 比如 if else while for
{
let obj = “这里是测试let”
}
console.log(‘obj’,obj) //这里会报错,obj未定义
如果换成 val 就可以正常输出了

4.let —— 不存在变量提升

console.log(‘song’)
var song //会输出underfunded
let song //会报错

5.let —— 不影响作用域链

6.const —— 要赋初始值

const OBJ= ‘a’ //正确
const A; //错误

7.const —— 一般常量使用大写(潜规则)

8.const —— 常量的值不能修改

const SCHOOL = ‘尚硅谷’
SCHOOL = ‘AAA’ //这里会报错,因为不能修改

9.const —— 块儿级作用域

{
const OBJ = “这里是测试let”
}
console.log(‘obj’,obj) //这里会报错

10.const —— 对于数组和对象的元素修改,不算对常量的修改,不会报错

const TEAM = [‘UZI’,‘MLXG’,‘Ming’,‘Shao’];
TEAM.push(‘Wang’); //不会报错 因为这个常量指向的地址没有改变
TEAM = 100; //报错

11.ES6 - 变量解析赋值

这被称为解构赋值

数组解构:
const F4 = [‘小沈阳’,‘张三’,‘李四’,‘赵五’];
let [xiao, zhang, li, zhao] = F4;
console.log(xiao); //输出为 —— 小沈阳
console.log(zhang); //输出为 —— 张三
console.log(li); //输出为 —— 李四
console.log(zhao); //输出为 —— 赵五
对象解构
const libai = {
name:‘李白’,
age:‘18’,
shici:function(){
console.log(‘这里是输出’)
}
}
let {name,age,shici} = libai
console.log(name); //输出为 —— 李白
console.log(age); //输出为 —— 18
console.log(shici); //输出为 —— {console.log(‘这里是输出’)}
shici() //这里是输出

如果只想提取方法
let {shici} = libai
shici() //这样也能用到方法

http://www.lryc.cn/news/96475.html

相关文章:

  • linux操作gpio的一些记录
  • 目前新能源汽车充电桩的发展受到哪些不利因素的影响?
  • jenkins
  • 基于深度学习的图像分割技术探究
  • 【c++】vector的使用与模拟实现
  • 记录安装stable diffusion webui时,出现的gfpgan安装卡住的问题
  • 【开发环境】Windows下搭建TVM编译器
  • 了解Unity编辑器之组件篇Video(二)
  • 安全杂记 - 状态码,DNS,编码
  • 微信小程序 Page页面
  • C语言实现基于Linux,epoll和多线程的WebServer服务器
  • 微信小程序数字键盘(仿微信转账键盘)
  • mac电脑强大的解压缩软件BetterZip 5.3.4 for Mac中文版及betterzip怎么压缩
  • Llama 2 来袭 - 在 Hugging Face 上玩转它
  • linux操作历史history定制
  • 微信小程序 wx.showModal
  • Java开发中的分层开发和整洁架构
  • Spring 多数据源方法级别注解实现
  • Redis在云服务器上的安装与客户端连接配置
  • ​语言模型输出端共享Embedding的重新探索
  • Spring中事务失效的8中场景
  • 安卓——转场动画
  • 多位数码管动态扫描显示变化数据(数码管右移1)
  • 充分了解java阻塞队列机制
  • 安装使用LangChain时的报错解决
  • 【MySQL】库的操作
  • Java设计模式之工厂模式
  • 正则表达式-速成教程
  • C语言中的数组(详解)
  • 【App管理04-Bug修正 Objective-C语言】