上一页 1 ··· 6 7 8 9 10 11 12 13 14 下一页
摘要: Class基本语法 概述 JavaScript语言的传统方法是通过构造函数,定义并生成新对象。下面是一个例子。 上面这种写法跟传统的面向对象语言(比如C++和Java)差异很大,很容易让新学习这门语言的程序员感到困惑。 ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板 阅读全文
posted @ 2016-07-20 15:24 huansky 阅读(1845) 评论(0) 推荐(0) 编辑
摘要: Proxy概述 Proxy用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程。 Proxy可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行 阅读全文
posted @ 2016-07-20 10:16 huansky 阅读(1805) 评论(0) 推荐(0) 编辑
摘要: 基本用法 ES6允许使用“箭头”(=>)定义函数。 上面的箭头函数等同于: 如果箭头函数不需要参数或需要多个参数,就使用一个圆括号代表参数部分。 如果箭头函数的代码块部分多于一条语句,就要使用大括号将它们括起来,并且使用return语句返回。 由于大括号被解释为代码块,所以如果箭头函数直接返回一个对 阅读全文
posted @ 2016-07-19 15:03 huansky 阅读(46596) 评论(1) 推荐(2) 编辑
摘要: 函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,为了避免这个问题,通常需要先判断一下参数y是否被赋值,如果没有,再等于默认值。 ES6允许为函数的参数设置默认值,即直接写在参数定义的后面。 可以看到,ES6的写法比ES5简洁许多,而且非常自然。 ES6的写法还有两个好处:首 阅读全文
posted @ 2016-07-19 11:18 huansky 阅读(1254) 评论(0) 推荐(0) 编辑
摘要: Map Map结构的目的和基本用法 JavaScript的对象(Object),本质上是键值对的集合(Hash结构),但是只能用字符串当作键。这给它的使用带来了很大的限制。 上面代码原意是将一个DOM节点作为对象data的键,但是由于对象只接受字符串作为键名,所以element被自动转为字符串[Ob 阅读全文
posted @ 2016-07-18 11:23 huansky 阅读(669) 评论(0) 推荐(0) 编辑
摘要: Set 基本用法 ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set本身是一个构造函数,用来生成Set数据结构。 上面代码通过add方法向Set结构加入成员,结果表明Set结构不会添加重复的值。 Set函数可以接受一个数组(或类似数组的对象)作为参数,用来初 阅读全文
posted @ 2016-07-18 10:51 huansky 阅读(3728) 评论(0) 推荐(0) 编辑
摘要: 1、同步模块模式 随着页面功能的增加,系统的业务逻辑越来越复杂。多人开发的功能经常耦合在一起。有时分配任务给多人实现的时候,常常因为某一处功能耦合了很多人的代码,出现排队修改的现象,这很不利于团队开发。 模块化:将复杂的系统分解成高内聚,低耦合的模块,使系统开发变得可控、可维护、可拓展、提高模块的复 阅读全文
posted @ 2016-07-17 20:16 huansky 阅读(1031) 评论(0) 推荐(0) 编辑
摘要: 基本概念 Generator函数有多种理解角度。从语法上,首先可以把它理解成,Generator函数是一个状态机,封装了多个内部状态。 执行Generator函数会返回一个遍历器对象,也就是说,Generator函数除了状态机,还是一个遍历器对象生成函数。返回的遍历器对象,可以依次遍历Generat 阅读全文
posted @ 2016-07-17 10:48 huansky 阅读(3414) 评论(0) 推荐(0) 编辑
摘要: 所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise是一个对象,从它可以获取异步操作的消息。Promise提供统一的API,各种异步操作都可以用同样的方法进行处理。 Promise也有一些缺点。 无法取消Promise,一旦 阅读全文
posted @ 2016-07-16 18:53 huansky 阅读(4061) 评论(0) 推荐(0) 编辑
摘要: 数组的扩展 Array.from() Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map)。 Array.from方法则是还支持类似数组的对象。所谓类似数组的对象,本质特 阅读全文
posted @ 2016-07-16 17:10 huansky 阅读(2816) 评论(0) 推荐(0) 编辑
摘要: js设计模式有很多种,知道不代表会用,更不代表理解,为了更好的理解每个设计模式,对每个设计模式进行总结,以后只要看到总结,就能知道该设计模式的作用,以及模式存在的优缺点,使用范围。 本文主要参考张容铭著的《JavaScript设计模式》。 1、简单工厂模式 由一个工厂对象决定创建某一种产品对象类的实 阅读全文
posted @ 2016-07-16 10:37 huansky 阅读(2425) 评论(0) 推荐(0) 编辑
摘要: 1、解构 在接收数据的地方(比如赋值的左边),解构使你使用模式去获取部分数据。 下面的代码是解构的一个例子: 在行 A 解构了 obj :通过左边的模式,运用赋值操作符(=)从里面获取数据,并将数据赋值给变量 f 和 l 。这些变量事先自动声明好,因为该行以 let 开始。 也可以解构数组: 解构可 阅读全文
posted @ 2016-07-15 14:52 huansky 阅读(8064) 评论(0) 推荐(0) 编辑
摘要: 1、新的字符串特性 标签模板: String.raw(callSite, ...substitutions) : string 用于获取“原始”字符串内容的模板标签(反斜杠不再是转义字符): > String.raw`\` '\\' true String.raw(callSite, ...subs 阅读全文
posted @ 2016-07-14 11:38 huansky 阅读(1471) 评论(0) 推荐(0) 编辑
摘要: 最近在阅读《探索es6》,就把自己认为重要的做一点笔记,方便日后学习。 1、获取更多的es6资源的办法 有两组 ES6 资源: “ ECMAScript 6 Tools ”,作者 Addy Osmani 。 “ ECMAScript 6 Learning! ”,作者 Eric Douglas 。 2 阅读全文
posted @ 2016-07-13 11:40 huansky 阅读(727) 评论(0) 推荐(0) 编辑
摘要: 昨天晚上9点半多接到大众点评的实习生面试电话,面试时间为半个多小时。第一次电话面试,表示还真的有点不适应。面完后,大脑一片空白,整个人处于一脸懵逼状态...没有录音,这些问题都是今天回忆的,可能会有纰漏。把他问的问题汇总下 1、自我介绍 没有准备,不知道怎么介绍,后面他直接打断,开始问问题。平时就应 阅读全文
posted @ 2016-06-27 14:51 huansky 阅读(1036) 评论(1) 推荐(0) 编辑
摘要: 本文主要是对《JavaScript高级程序设计》第六章(面向对象的程序设计)的总结,书上的这章至少看了4遍是有的。该章主要讲对象的创建与继承。其中创建对象和继承方式至少6种,再加上一些方法属性,很容易搞得晕头转向的。因此有必要对本章的内容理一理,以后忘了也好过来看一看。 由于文章长度的限制,本文主要 阅读全文
posted @ 2016-06-26 18:33 huansky 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问我的github:huanshen,有我的源码解析 1、each 跟for循环很像,但是更有用,如果你理解了就知道了。 2.makeArray 将类数组对象转化为数组。中间用到了merge函数,具体可见第三个函数,有说明。类数组对象(isArraylike)形如{0:"tt",2:"ccc" 阅读全文
posted @ 2016-06-25 00:13 huansky 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问我的github:huanshen,有我的源码解析 常用的判断函数有type,isEmptyObject,isFunction,isWindow,isPlainObject,isArraylike,isArray,isNumeric,documentIsHTML ,isXML,并对其源码进行 阅读全文
posted @ 2016-06-23 21:31 huansky 阅读(2128) 评论(0) 推荐(0) 编辑
摘要: 对$函数你已经很熟悉了。它通常返回一个html元素或一个html元素的集合,如下: 但是,如果把这个函数改造为一个构造器,把那些元素作为数组保存在一个实例属性中,并让所有定义在构造器函数的prototype属性所指对象中的方法都返回用以调用方法的那个实例的引用,那么它就具有了链式调用的能力。我首先需 阅读全文
posted @ 2016-06-20 14:27 huansky 阅读(706) 评论(0) 推荐(0) 编辑
摘要: 最近在看canvas动画方面教程,里面提到了采用四叉树检测碰撞。之前也看到过四叉树这个名词,但是一直不是很懂。于是就又找了一些四叉树方面的资料看了看,做个笔记,就算日后忘了,也可以回来看看。 QuadTree四叉树顾名思义就是树状的数据结构,其每个节点有四个孩子节点,可将二维平面递归分割子区域。Qu 阅读全文
posted @ 2016-06-12 20:06 huansky 阅读(7743) 评论(0) 推荐(1) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 下一页