随笔分类 -  JavaScript

摘要:一、定义 vue的数据双向绑定是基于Object.defineProperty方法,通过定义data属性的get和set函数来监听数据对象的变化,一旦变化,vue利用发布订阅模式,通知订阅者执行回调函数,更新dom。 二、实现 vue关于数据绑定的生命周期是: 利用options的data属性初始化 阅读全文
posted @ 2017-07-22 10:53 bdbk 阅读(949) 评论(0) 推荐(0) 编辑
摘要:前几天写了一个贪吃蛇小游戏,正好用到了状态模式。 当一个对象内部状态发生改变时候,会导致其行为的改变,这看起来像是改变了对象。 如果一个函数要更具某一个对象的状态来判断该对象应该执行的方法,那么这个函数中会增加很多if判断分支,并且,如果要增加这个对象的一种状态,那么就要在原来的代码中添加一些判断, 阅读全文
posted @ 2016-03-20 15:36 bdbk 阅读(643) 评论(0) 推荐(1) 编辑
摘要:一 关于事件的异步 事件是JavaScript中最重要的一个特征,nodejs就是利用js这一异步而设计出来的。所以这里讲一下事件机制。 在一个js文件中,如果要运行某一个函数,有2中手段,一个就是直接调用,比如foo(),第二就是利用事件来触发,这中函数也叫回调函数,比如传递给setTimeout 阅读全文
posted @ 2016-02-20 17:56 bdbk 阅读(712) 评论(0) 推荐(1) 编辑
摘要:一.起源 JavaScript中的异步由来已久,不论是定时函数,事件处理函数还是ajax异步加载都是异步编程的一种形式,我们现在以nodejs中异步读取文件为例来编写一个传统意义的异步函数: var fs = require('fs'); function readJSON(filename,cal 阅读全文
posted @ 2016-02-06 21:50 bdbk 阅读(13311) 评论(3) 推荐(0) 编辑
摘要:看着java中各种import加载,在回过头来看看javascript还在自己造轮子,写各种XX的模块加载框架,ECMASCRIPT6不知什么时候能够普及。不过DT归DT,该学的还是要学。一 同步加载模式(SMD)同步顾名思义就是按顺序依次加载执行,比如A模块要引用B模块中的某些函数完成事情,那么此... 阅读全文
posted @ 2016-01-05 10:12 bdbk 阅读(7125) 评论(4) 推荐(1) 编辑
摘要:定义单例模式就是一个类只能实例化一个对象,并且提供了一个访问它的全局访问点。一般在实现登陆框,或者一个全局的控制器都会用到单例模式。现实中有window对象,线程池,全局缓存等。简单实现var Person = function(name){ this.name = name; this... 阅读全文
posted @ 2015-11-23 16:47 bdbk 阅读(157) 评论(0) 推荐(0) 编辑
摘要:貌似angularjs出来之后网上各种夸angularjs的好黑jquery。angularjs大致可以分为几个板块:作用域,控制器,指令(主要),路由,依赖注入。1 作用域作用域在angular中的表现形式是$scope 阅读全文
posted @ 2015-11-05 22:03 bdbk 阅读(183) 评论(0) 推荐(0) 编辑
摘要:当我写这篇文章的时候,sea.js已经逐渐退出历史的舞台,详细链接。不过任何新事物的出现都是对旧事物的取其精华,去其糟粕,所以了解一下以前模块的加载也是一件好事。js模块化的原因自不比多说,看看HUX同学的js模块加载七日谈就知道了,将的非常详细。一 .CMD模块加载规范 一个js文件就是一个模块... 阅读全文
posted @ 2015-10-24 12:34 bdbk 阅读(430) 评论(0) 推荐(0) 编辑
摘要:一.函数基本理论 1,函数的定义没什么意义,之后创建一个字符串,就是函数代码 2,函数执行(被调用)的时候发生的事情:(以上面的代码为例) 创建一个执行环境execution context ,该对象有一个特殊的属性叫[scope chain] 作用域链,属性的值是一个类数组对象,如上图所示,第一个 阅读全文
posted @ 2015-08-27 20:05 bdbk 阅读(200) 评论(0) 推荐(0) 编辑
摘要:无论学习前端还是后端设计模式是作为一名程序员不可缺少的知识,就像下底传中对于一个边锋来说。 一.策略模式 策略模式给人的第一感觉就是在代码里面消除了很多if-else分支语句,比如一个求员工奖金的程序: 不适用设计模式,代码如上图,会在一个函数中加入很多if判断,若果分支比较长,或者以后加入更多的种 阅读全文
posted @ 2015-04-16 18:52 bdbk 阅读(169) 评论(0) 推荐(0) 编辑
摘要:一、类和对象 1, JavaScript对象分为三类:本地对象,内置对象,宿主对象。 本地对象有15种:Object Function Array String Number Boolean Date RegExp Error EvalError RangeError RrefenceError S 阅读全文
posted @ 2015-03-31 19:57 bdbk 阅读(242) 评论(0) 推荐(0) 编辑
摘要:1 IE中不能操作TR标签的innnerHTML。2 日期处理函数不一致。(1)IE 8- new Date().getYear()返回的是到当前日期到1900年的差值,FF返回的是当前的年。(2)在处理构造函数传入的字符串时,如果字符串不符合标准,opera的解析是转化为当前的日期 如,“Janu... 阅读全文
posted @ 2014-08-13 15:23 bdbk 阅读(507) 评论(0) 推荐(0) 编辑