摘要: 一、继承 js并没有继承这一个现有的机制,所以我们所说的继承是通过JS本身的机制去实现的。 1、类式继承 这里之所以要将SubClass的原型赋值为SuperClass的实例,是因为如果我们将父类的实例赋值给子类的原型,那么子类的原型就可以访问到父类的原型上的属性和方法与从父类的构造函数中赋值的属性 阅读全文
posted @ 2017-05-10 16:03 吞佛童子 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 一、封装 面向对象编程思想其中的一个特点就是封装,通俗的讲法就是把需要的功能方向在一个对象里。遗憾的是,对于JS这种解释性的弱类型语言没有经典强类型语言中那样通过class等关键字实现类的封装方法,js中都是通过一些特性模仿实现的,虽然这是个弊端,但也带来了极高的灵活性。 我们看一个Book类是如何 阅读全文
posted @ 2017-05-07 16:24 吞佛童子 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 数组的扩展 一、类数组对象与可遍历对象转换为数组 Array.from()方法用于将类数组对象、可遍历对象转换为数组,其中可遍历对象包括es6新增的set和map结构 所谓的类数组对象,本质特征是必须拥有length属性 实际中有哪些类数组对象呢? 1、DOM操作返回的NodeList集合 2、函数 阅读全文
posted @ 2017-05-07 11:34 吞佛童子 阅读(188) 评论(0) 推荐(0) 编辑
摘要: JavaScript面向对象编程 众所周知,JS作为一门脚本语言,由于其设计者在设计JS的时候,也仅仅用了很少的时间就完成了JS这门语言的创建,JS虽然拥有着脚本语言的优势,但是JS也存在着天生的缺陷。其中之一就是:“没有完整的面向对象和自定义类型支持”,这是因为JS本身没有很好的模块化。但事实上是 阅读全文
posted @ 2017-05-06 17:06 吞佛童子 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 数值的扩展 注:以下内容中: 0 表示数字零, o 为英文字母。 一、二进制和八进制数值表示法 es6提供了二进制和八进制的数值表示法,分别用前缀0b(或者0B)和0o(或者0O)表示。 从es5开始,在严格模式中,八进制的数值就不允许使用0前缀表示,es6明确表示,要使用0o表示 将0b和0o前缀 阅读全文
posted @ 2017-05-06 13:28 吞佛童子 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 解构赋值 1、基本使用方法 es6允许按照一定的方式,从数组和对象中提取值,从而对变量进行赋值,这种模式被称为解构。 以前,我们为一个变量赋值,通常这么写: 而在es6中,我们可以这么写: 上面的代码表示,我们可以从数组中提取值,并按照位置的对应关系对变量进行赋值。 嵌套的解构赋值也是允许的: 某些 阅读全文
posted @ 2017-04-23 15:41 吞佛童子 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 1、let命令 一、基本用法 首先看下面一段代码: 以上代码的运行结果可能是什么? 0, 1, 2, ... 9 ? 结果是:连续输出了10次 10 简单的解释就是,当使用map遍历a中的每一个fn时,当fn执行时,在作用域链上查找i时,找到的i是最终已经变成了10的i,而不会是我们所预期的0~9。 阅读全文
posted @ 2017-04-22 14:38 吞佛童子 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 最近对react native挺感兴趣,于是准备玩一玩,开发环境的搭建虽然简单,但是如果不够仔细,还是非常容易出错的,因此随笔一篇,记录自己在搭建中所遇到的问题. 安装步骤 注意: 以下的命令行命令,最好在管理员模式的命令行下执行,否则会造成某些权限不够的问题。 必需的软件 安装步骤 注意: 以下的 阅读全文
posted @ 2017-04-14 14:56 吞佛童子 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 最近在项目中使用到了vuex,但是在配合vue使用时,也还是遇到了不少的问题,最终还是解决了问题,因此写一篇随笔来记录期间遇到的问题吧 项目概要: Vuex中所储存的的状态如下: Vue中:有一个tabEntrance组件 与一个productList组件, productList是tabEntra 阅读全文
posted @ 2017-04-10 10:54 吞佛童子 阅读(157) 评论(0) 推荐(0) 编辑