Es6学习
Es6学习记录
let/const
let: 当标识符需要改变的时候
const:当标识符不需要改变的时候
cosnt:修饰的标识符为常量 不能再次赋值
在开发时 优先使用const 只有需要改变某一标识符的时候才用let
const 定义的标识符不能修改值
const 在定义时要直接赋值
const 常量的含义是指向的对象不能修改 但是可以改变对象内部的属性
事件监听
v-on @
如果该方法不需要额外参数,那么方法后的()可以不添加
如果需要同时传入某个参数,同时需要event时,可通过$event传入事件
ES6基础知识
一、let和const用法
let的用法
1.let声明变量 没有变量提升
console.log(a);
let a = 10;
//报错 因为打印不能写在声明前面
2.let是一个块级作用域
console.log(b);
if(1===1){
let b = 10;
}
console.log(b);
//出了块级作用域 打印不出结果
3.不能重复定义
let a = 1;
let a = 3;
//会出错 var的话 后面的赋值会覆盖掉前面的赋值
const的用法
const 声明变量 一旦被声明 无法修改 (常量)
const 也没有变量提升
const 也是块级作用域
const 也不能重复定义
//变量
const max = 30;
console.log(max);
//对象
const person = {
name:'小明';
}
//数组
var arr = [];
for(var i = 0; i < 10; i++){
arr[i] = function(){
return i;
}
}
console.log(arr5)
//结果等于10
//var有变量提升 i在执行完循环之后 为10 所以返回的值也是10
---------------------------------------------------------------------------------
const arr = [];
for(let i =0 ;i < 10; i++){
arr[i] = function(){
return i;
}
}
console.log(arr5)
//结果为5
//let 为块级作用域
不会污染全局变量
let和const的使用
建议:在默认情况下用const 在知道变量值需要被修改的时候使用let
变量的解构赋值
var { log } = console;
log('需要打印的内容');
//对象的解构
const Obj = {
name:'zhangsan';
age:22;
hobbies:function(){
console.log('唱歌','跳舞','画画')
}
};
Obj.hobbies()
//解构
let {hobbies} = Obj;
hobbies();
二、模板字符串
``
内容中可以直接出现换行符
let Obj =<ul> <li>我是内容1</li> <li>我是内容2</li> <li>我是内容3</li> </ul>
变量拼接
let url = 'http://www.baidu.com';
let posturl = '${url}/post/posting';
--------------------------------------------------
let famous = '沈腾';
let out = '${famous} 是最搞笑的男演员';
console.log(out);
三、简化对象写法(对象增强写法)
let name = 'zhangsan';
let change = function(){
console.log('我们可以改变你!')
}
const person = {
name,
change,
improve(){
console.log('我是提高方法')
}
}
四、箭头函数
let fn = function(a, b){
}
//箭头函数
let fn = (a, b)=>{
return a+b;
}
//调用函数
let result = fn(1, 2);
console.log(result);
this是静态的,this始终指向函数声明时所在作用域下的this的值
//箭头函数适合与this 无关的回调, 定时器,数组的方法回调
//箭头函数不适合与this有关的回调, 事件回调,对象的方法
五、函数默认值、剩余参数
//形参初始值 具有默认值的参数 一般位置要靠后
六、rest参数
rest参数 用于获取函数的实参 用来代替arguments

浙公网安备 33010602011771号