ES6学习笔记:对象
在JavaScript中,几乎每一个值都是某种特定类型的对象,于是ES6也着重提升了对象的功能性。上周花了一周的时间了解了JavaScript中的对象相关的知识,对于ES6中有关于对象的扩展功能并不太了解。今天开始就来简单的了解和学习有关于ES6中对象的扩展功能。ES6通过多种方式来加强对象的使用,通过简单的语法扩展,提供了更多操作对象及对象交互的方法。接下来的内容就是有关于这些知识的整理。
在JavaScript中,几乎每一个值都是某种特定类型的对象,于是ES6也着重提升了对象的功能性。上周花了一周的时间了解了JavaScript中的对象相关的知识,对于ES6中有关于对象的扩展功能并不太了解。今天开始就来简单的了解和学习有关于ES6中对象的扩展功能。ES6通过多种方式来加强对象的使用,通过简单的语法扩展,提供了更多操作对象及对象交互的方法。接下来的内容就是有关于这些知识的整理。
这篇文章主要探讨和学习如何在ES6中处理变量和作用域。
ES6提供了两种新的声明变量的方法:let
和const
,它们主要替换ES5中使用var
声明变量。
过去,JavaScript的变量声明机制不像C语言一样,在声明变量的同时也会创建变量(绑定)。在以前的JavaScript中何时创建变量要看怎么声明变量。在以前的变量作用域有全局作用域和局部作用域,但不像其他的程序语言有块作用域一说。在ES6中新引入的块级作用域绑定机制。
ES6中引入了模板字符串(Template Literal),是创建字符串的一种新方法。有了这个新特性,我们就能更好地控制动态字符串。这将告别长串连接字符串的日子。要创建一个模板字符串,我们可以使用反引号(撇号)字符替找单引号'
或"
。这将产生一个新的字符串,我们可以以任何方式使用它。
Hello大家好,我是余博伦,在接下来的一段时间里,由我和大家从零开始共同学习React技术栈的相关知识。教程将会以连载的形式发布在我的个人博客和微信公众号上,以文字教程为主,辅以一些代码示例供同学们参考,在连载结束之后,我会将所有内容整理为电子书提供下载。连载时教程会在每日早晨由公众号推送,同时为了方便一些外链和代码示例,可以在本博客查看教程。
React.js 是一个帮助你构建页面 UI 的库。如果你熟悉 MVC 概念的话,那么 React 的组件就相当于 MVC 里面的 View。如果你不熟悉也没关系,你可以简单地理解为,React.js 将帮助我们将界面分成了各个独立的小块,每一个块就是组件,这些组件之间可以组合、嵌套,就成了我们的页面。一个组件的显示形态和行为有可能是由某些数据决定的。而数据是可能发生改变的,这时候组件的显示形态就会发生相应的改变。而 React.js 也提供了一种非常高效的方式帮助我们做到了数据和组件显示形态之间的同步。React.js 不是一个框架,它只是一个库。它只提供 UI (view)层面的解决方案。在实际的项目当中,它并不能解决我们所有的问题,需要结合其它的库,例如 Redux、React-router 等来协助提供完整的解决方法。
看看上一节我们的代码,仔细留意一下 changeLikeText
函数,这个函数包含了 DOM 操作,现在看起来比较简单,那是因为现在只有 isLiked
一个状态。由于数据状态改变会导致需要我们去更新页面的内容,所以假想一下,如果你的组件依赖了很多状态,那么你的组件基本全部都是 DOM 操作。一个组件的显示形态由多个状态决定的情况非常常见。代码中混杂着对 DOM 的操作其实是一种不好的实践,手动管理数据和 DOM 之间的关系会导致代码可维护性变差、容易出错。所以我们的例子这里还有优化的空间:如何尽量减少这种手动 DOM 操作?
第一节课呢,我们就来简单介绍一下应用在 React 开发当中,属于 ES6 的新的关键字和语法糖,也好为我们之后的学习打下一个基础,当然我更推荐同学们对 ES6 有一个比较全面的了解之后再开始学习 React,不过你也不需要担心,以后在课程中每当遇到涉及 ES6 新语法的问题时,我都会稍作讲解介绍。这是本教程的第一课,主要内容是 ES6 相关的前置知识介绍,如果你有发现不懂的术语,不需要担心,因为在接下来的教程当中,所有我们提到的术语全部都会涵盖讲解。
前端时间学习Vue的时候,碰到Proxy
,当时就一脸蒙逼了。所以返过头来补一下相关的知识。在JavaScript中有Proxy
和Reflect
的两个概念。最近几天一直在学习这两个概念,今天整整这方面的相关知识点。