Javascript这种语言的基本语法结构是由ECMAscript来标准化的, 所以我们说的Javascript版本一般指的是ECMAscript版本.es5是2009.12月发布的,es6是2015.6月发布的。vue2
完全支持es5的(vue3完全支持es6的),react完全支持es6
(1)变量必须要带修饰符
(2)函数里面this不能指向window
(3)不允许在非函数的代码块内声明函数
(4)禁止八进制方法
(5)函数的arguments数组形参和实参不同步
- forEach没有返回值 里面没有return
- map有返回值 所以里面可以使用return关键词他的返回值是一个数组
- 实现reduce函数求和
-
底层实现reduce
- call传递的参数是一个个的内容,使用,隔开
- apply传递的参数是一个整个数组
ECMAscript 6(简称ES6)是Javascript语言的下一代标准,已经在2015年6月正式发布了。ES6的目标,是使得Javascript语言可以用来编写大型的复杂的应用程序,成为企业级开发语言。 es6对应数组 字符串 对象及函数以及循环,值类型,修饰符等都有加强(es6以后的内容都称为es6的内容)
(1)find 查找
(2)findIndex 查找下标
静态方法(使用类名.)
(3)Array.of() 将一组数据转为数组
(4)Array.from() 将伪数组转为数组
(1)includes 是否包含 (包含返回true 不包含返回false)
(2)startsWith 是否以这个字符串开头 (是返回true 不是返回false)
(3)endsWith 是否以这个字符串结尾 (是返回true 不是返回false)
(4)repeat 重复多次的去平铺对应的字符串
(1)var 关键词修饰的变量是伪全局变量(进行变量提升)
(2)let 关键词 块状作用域 (变量名不能重复声明 避免变量名污染)
(3)const 关键词 常量(常量不可变 也不能重复声明 声明一定要赋值(不能二次赋值))
旧有值类型
number , String , boolean , null , undefined
新增的类型
(1) symbol 独一无二的值
(2)bigInt 大的整型
静态方法
(1)is方法 Object.is() 判断俩个对象是否是一个(true或者false)
(2)Object.assign 将后面对象合并当前前面 返回的是合并的对象
(1)箭头函数
(2)箭头函数的简化
- 如果只有一个参数 可以省略()
- 如果只有一句代码的话 可以省略{}
- 如果只有一句代码 且你需要返回数据情况下 可以省略对应的 retrun
(3)箭头函数的特性
- 箭头函数里面没有this(根据作用域链向上查找对应的this)
(4)默认参数
(1)属性的简化
当你的属性值是一个变量的情况下,以及你向使用你的变量作为key的名,这个时候可以省略key
(2)函数的简写
- for in 是用于遍历对象的 遍历的是对象的里面key 他也可以遍历数组(数组也是对象)
- for of 是用于遍历数组的 遍历的是数组里面的value 他不可以遍历对象(只有实现了迭代器的对象才可以被遍历 必须具备length或者size属性)
(1)如果要使用对应的for of来遍历对象的话 怎么办!
Object的几个方法(静态方法) 可以用来实现对应的遍历
- keys 拿到所有的key
- values 拿到所有的值
- entries 拿到所有的键值对
(1)set 元素不重复的一个集合(去重)
set声明
- 无参
- 将数组作为参数传递
(2)相关的方法(增删改查)
- add 添加
- delete 删除
- clear 清空
- keys 获取key
- values 获取值
- entries 获取键值对象
- forEach 遍历(三个参数分别是value,key,set)
- has 判断是否存在 (返回的是boolean类型)
(3)属性
size获取对应的长度
(4)WeakSet 内容存储对应的set(只能存储对象 但并不能完成去重)
(5)map 基于set和array之上构建的一个集合(key(set)-value(array))
map的声明
map对应的方法
- get 通过key来获取value
- set 存入一个key-value
- delete 通过key来删除
- clear 清空所有
- keys 获取所有的key values 获取所有的值 entries 获取所有的键值对
- has 判断当前key是否存在
- forEach 遍历
(1)解除构建
(1)...打开数组拿出里面的内容
他是用于对象构建的 (类只是一个构建对象的容器 )调用这个class要使用new关键词
注意事项
- class 修饰的类 类名首字母必须大写
- class 不允许重复声明
- class 里面this只能存在于constructor(构造器)里面
- class 里面this指向当前实例化对象
- 在实例化的过程 new的过程的 调用的constructor函数 跟其他函数无关(所以当前在constructor都会重新声明一次)
extends 用于继承 他会拥有父类所有的非私有的属性及方法
注意事项
- 在子类构造里面如果想要使用this 必须先要使用super()
- super指向父类的构造器
- 子类无法获取构造器之外的函数
(2)使用reduce求数组中的最大数, var arr = [2,4,6,3,7,8,5]
(3)使用indexOf完成数组去重.
(4)使用for-of求5! (1*2*3*4*5)
(5)使用for-of求1!+2!+3!+4!+5!
- 腾讯围棋(野狐)手机版最新版中国象棋手机版「腾讯围棋(野狐)手机版最新版」
- 小米手机掉水里了应该怎么处理手机掉水里怎么处理「小米手机掉水里了应该怎么处理」
- 有钱人“买爆”上海豪宅,有楼盘卖出200亿!去年多个“10万+”豪宅“日光”
- 华为WatchGT3可以遥控拍照吗?华为WatchGT3遥控拍照介绍华为手机驱动「华为WatchGT3可以遥控拍照吗?华为WatchGT3遥控拍照介绍」
- 谱写中印尼命运共同体新篇章
- 东京股市继续上涨
- 如何有效格式化手机以清理存储空间和提升性能手机格式化是什么意思「如何有效格式化手机以清理存储空间和提升性能」
- 如何快速关闭手机勿扰模式?详细步骤解析!手机勿扰模式在哪里「如何快速关闭手机勿扰模式?详细步骤解析!」
- microsd卡是什么卡手机sd卡是什么「microsd卡是什么卡」
- 名茶汇聚的安徽,何以大而不强?
- 车子停多久需要启动,防止电瓶亏电?手机闲置太久充不了电「车子停多久需要启动,防止电瓶亏电?」
- AI辅助音乐创作,做有温度有情感的科技
- 朝阳区电影嘉年华开启,持电影票根可享酒店景区折扣
- 合金弹头7手机版合金弹头手机版下载「合金弹头7手机版」
- 朝鲜侠客传2M一键多开教程,小六云手机全自动挂机搬砖攻略!
- 小米4的通话录音在什么地小米手机通话录音在哪里找「小米4的通话录音在什么地」
- 细节拉满,为什么说龙珠GT是致敬经典,最后自己成了经典
- Steam集换卡牌简史:热衷集卡的玩家,都在收藏什么?
- 离谱!东映晒《海贼王》草帽海贼团无山治合照,这是演都不演了?
- 《TxT小说阅读器》最新版手机txt阅读器「《TxT小说阅读器》最新版」
- 1031配售型保障性住房能贷款购买吗?购买后可以落户吗?答案戳→
- 1032金徽酒翻身,要谢谢复星
- 1023a16z合伙人:稳定币为何能颠覆跨境支付?
- 1024我的世界机器人怎么做 手机版简单机器人教程手机机器人「我的世界机器人怎么做 手机版简单机器人教程」
- 1015高质低价、诚信经营,从修车匠到途虎养车加盟商的创业之路
- 1016oppo手机清除数据后开不了机怎么办oppo手机开不了机怎么办「oppo手机清除数据后开不了机怎么办」
- 1017达利欧围绕关税再三发声,他为何担心比衰退更糟糕的事情
- 1008Motorola 通用官方解锁 Bootloader 教程motorola手机「Motorola 通用官方解锁 Bootloader 教程」
- 999七喜 V006七喜手机「七喜 V006」