let与const都是块级作用域,推荐使用let和const,而不是var;
不同点:let是定义的变量可以重新赋值,const定义的变量不可以重新赋值,所以一般我们定义的变量值为固定的时使用const。
let arr = [];
const today = 'Friday';
箭头函数没有this,直接拿来就用,个人感觉看起来也很清爽0.0
const areFun = (value) =>{
retrun value
};
console.log(areFun(111));
模板字符串最优秀的地方是,可以在字符串里面加入变量,让后让变量所赋值的值成为字符,去个栗子:
const a='xxx',b=11;
const c=`${a}-${b}ccccc`;
console.log(c); // 输出为 xxx-11ccccc
通常用于数组和对象的赋值;
const a =[1,2,3];
const b = {'x':1,'y':2};
const c = [0,...a]; // 解构赋值,相当于 const c = [0,1,2,3,4]
const {x} = b; // 把b对象里面的x属性的值赋值给变量x;
目前常用的就是以上的这么多,还有Promise和async也很重要,这个使用频率没上面高,但是也很重要,打算重新开一章单独讲。
最后,来个彩蛋吧…
slice的妙用!
有下面一个数组,[1,2,3,4,5,6,7,8,9,10,11,12,13],让你在小于10的数字前面加个0,变成[01,02,03,…,12,13]这样,你会咋整呢?
嘿嘿,看一下slice的用法,
slice(start,end) ; start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。 end :可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
好嘞,开始编码:
let list=[1,2,3,4,5,6,7,8,9,10,11,12,13];
list=list.map(ele=>('0' + ele).slice(-2));
// 这里有个细节,'0'+ele 原来ele这个变量是number类型,但因为前面是string,一相加,诶~ 变成字符串相加了
console.log(list);
输出为:
解决!