发表于: 2019-03-24 22:22:27
1 689
今天完成的事情,今天着实有点水了,自己都看不下去。写了JavaScript的静态页面,看了写关于ES6的东西。没有去先写js部分。师兄建议我任务4,用es6的模板字符串写,但是越看下去,越觉得要补充一下基础。
看了一下关于ES6方面的东西,let变量与块级作用域,模板字符串。
在ES6中,新增了let命令,来声明变量,let和var的用法基本一致,但是存在一些差别。
let的变量只存在let代码出现的代码块中。
let,没有变量提升。
let可以形成暂时性的死区。
let,声明的变量不能同时声明第二次。
作用域上篇日报提到了,全局作用域,和局部作用域,那什么是块级作用域。
全局作用域指的是,函数以外定义的变量,以及最外层的函数。
局部作用域指的是,函数以内的变量,可以在函数以内使用。但是在外面调用的话,就会出现underfunded。
块级作用域指的是,函数里面的代码块,比如
function demo() {
var arr=[];
for (var i=0; i<10;i++){
arr[i];
}
console.log(i);
}
demo();
我们for循环的外面,打印i的数值,为10,因为这是局部作用域。
function demo() {
for (let i=0; i<10;i++){
}
alert(typeof i);
}
demo();
检测数据类型,i是underfunded,为什么呢,因为块级作用域,块级的作用域从,就存在for循环里,我们在for循环代码块外面打印就会显示underfunded。
关于es6,新定义的模板字符串。之前我们写字符串的时候,需要把一段话一段话的拼接起来,写看着特别辛苦。模板字符串知支持变量,而且还可以嵌套层级。
先从最简单的用法讲起,模板字符串,用反撇号(`),取代了之前一直使用的“”'', ,之前处理,字符串换行的时候,需要用转义符,\n来表示。在es6的模板字符串中,我们直接换行就行了。
但是在模板字符串中,空格,也算是字符串。所以我们换行的时候,一定要留意缩进,html是不区分大小写的语言,而且对换行,不敏感,模板字符串完全不一样,虽然两者不是一回事。
模板字符串的占位符,模板字符串最强大的地方,在于我们省略了之前毫无意义的,拼接字符串的形式,因为占位符里面,可以放表达式,可以把变量放进去。
let name = 'zhangsan';
let age = 19;
let info = `我的名字叫${name}, 我今年${age}岁。`;
console.log(info);
我们用let,定义了几个变量,然后用模板字符串的占位符,放了进去。
而且我们通过模板字符串,还可以创建html模板,通过js输出。
说一下,任务4的,法官日志的逻辑,我打算,把浏览器里面,把数组转为对象的值,先取出来。然后对象里面的内容输出到里面去。
不过我先完成的是,默认有四个盒子,多一个玩家,就要多一个盒子,用模板字符串。
收获,今天完成的事情是,简单的了解了一下关于es6上面的知识,宋恒师兄提醒我多看一下,对象的使用方法,let与var之间的区别,以及全局作用域,和局部作用域,和块级作用域。模板字符串的使用。明天打算开始写法官日志。
评论