- 博客(24)
- 收藏
- 关注
原创 整理下之前学习的websocket
这里websocket的历史我就不说了。不要把websocket和长连接弄混了就行了。 Websocket是基于HTTP协议的,借用了HTTP的协议来完成一部分握手。websocket握手客户端到服务端:GET / HTTP/1.1Connection:UpgradeHost:127.0.0.1:8088Origin:nullSec-WebSocket-Extensions...
2018-04-09 12:26:19
223
原创 回顾下之前整理的promise
es6的集成方法 Promisepending: 初始状态,不是成功或失败状态。 fulfilled: 意味着操作成功完成。 rejected: 意味着操作失败。当Promise状态为fulfilled时,调用 then 的 onfulfilled 方法,当Promise状态为rejected时,调用 then 的 onrejected 方法, 所以在异步操作的完成和绑定处理方法之间...
2018-04-08 17:43:21
182
原创 比较两个数组和对象是否相同
JavaScript是不能用==或===操作符直接比较两个数组是否相等的alert([]==[]); // falsealert([]===[]); // false因为JavaScript里面Array是对象,==或===操作符只能比较两个对象是否是同一个实例,也就是是否是同一个对象引用。目前JavaScript没有内置的操作符判断对象的内容是否相同。但是惯性思维让人...
2018-04-03 15:52:03
3213
原创 dom基础API
之前也通过原生的dom操作写项目了,用到了很多的api,但是仅仅是用了,并不是那么的去了解它,我希望系统的学一下。节点元素节点 文本节点属性节点获取元素 document下的特有函数 getElementById() // Id名字 getElementByName() 根据name属性查找 返回一个NodeList ...
2018-03-30 19:48:25
329
原创 左侧固定宽,右侧自适应(来源面试)
面试给我出了这样的一个自适应的问题,当时由于紧张和日常工作中没怎么弄过自适应的问题所以。。。有点悲惨。回来好好的想了一下,给出以下几种方法//两个块元素<div class="div1"></div><div class="div2"></div>方法一:利用浮动<style type="text/css">*{ margin:0; padding:0;}.div1{
2018-03-30 17:30:26
124
原创 class.js
/* Simple JavaScript Inheritance * By John Resig http://ejohn.org/ * MIT Licensed. */// Inspired by base2 and Prototypevar Class = (function () { var initializing = false, fnTest =
2017-01-14 14:31:36
344
原创 当点击指定区域图片(精灵)进行旋转
var offset = _this.__eventOffset; var rotateDiv = _this.m_viewElement.querySelector('.actor-rotate'); //统一坐标系 //var _center = object.parent.clientPosToView(object.m_position.x,obje
2016-09-13 10:52:38
478
原创 用js+css实现帧动画播放的功能
_为了确保点击时候播放_cancelSelectObject: function (id) { var _this = this; _this._selected = false; if(_this._animate){ _this._animate._play = false; } }, /** * [__selectObj
2016-09-09 10:44:38
2798
原创 用js+css模拟九宫格精灵版本二
__setScale9Sprite_ :function(data) { var _this = this; if(data.wraperId != _this.m_id) { return; } //九宫格的信息 var info = _this._scale9SpriteInfo = _this._scale9SpriteInfo || { url: null
2016-09-09 10:40:49
481
原创 引用JS写的一个事件的分发中心
/* * @create time 2015-03-24 * @author Tong_yx * @desc 全局事件处理中心 *//** * 事件对象 * @param {string} token 事件的token值,用于删除事件 * @param {object} obj 事件的对象 * @param {string} funcname 函数名称 * @param {o
2016-09-09 10:39:02
2552
原创 用js实现帧动画
__setAnimate: function (data) { var _this = this; if(data.wraperId != _this.m_id) { return; } switch(data.key){ case 'animate': _this._animate = _this._animate || {_speed:1.0};
2016-09-09 10:36:14
785
原创 three.js
var gf = gf || {};gf.ViewLogic3d = gf.Object.extend( /** @lends gf.ViewLogic3d# */ { m_objectList: null, subCamera: null, loadingManager:null, fbxloader : null, mixers : null,
2016-09-07 11:56:11
884
原创 three.js实现简单功能
love div#canvas-frame { border: none; cursor: pointer; width: 100%; height: 100%;
2016-09-05 18:04:26
4521
原创 使用node.js搭建本地服务器
var http = require('http');var url = require('url');var fs = require('fs');var path = require('path');//配置var config = { port: 80, denyAccess: ['./httpserver.js', './src/requirecache.js'
2016-09-02 17:55:58
543
原创 three.js实现一个网格
Three框架 div#canvas-frame { border: none; cursor: pointer; width: 100%; height: 600px; back
2016-09-01 17:52:33
1308
原创 webgl 入门的简单小模型
onload = function () { var c = document.getElementById("canvas"); c.width = 500; c.height = 300; var gl = c.getContext('webgl') || c.getContext('experimental-webgl'); gl.clearCo
2016-09-01 17:49:33
703
原创 用js+css 模拟九宫格精灵
__setScale9Sprite :function(data) { var _this = this; if(data.wraperId != _this.m_id) { return; } //最外层的div var scale9Sprite = _this.m_viewElement.querySelector('#scale9Sprite'); if(!
2016-08-26 18:22:02
570
原创 观察者模式
对于观察者模式还不是特别大额理解,现在那么静静下心来好好的整理了一下。 自己理解搞这么多的设计模式到底是干什么? 解耦和模块化。试着想象,现在很吊的滴滴打车,曾经出现了很多的黑科技优惠券,不就是由于发展太快,解耦处理不好,出现了很多的‘黑科技’。(刚开始写,表达能力不是很强,后期我会慢慢的优化的。)首先观察者模式要做到开放-封闭原则(修改原有的代码就代表不好)。依赖倒转原则(应该让程序都依赖抽
2016-08-18 16:39:19
292
原创 JS中使用闭包来定义常量
JS中有个关键字const,但是目前的浏览器不支持。如果要是定义一些常量建议使用闭包var Class = (function () { var UPPER_BOUND = 100; //定义了常量 var Test = {}; //定义了一个静态方法,获取常量的方法 Test.getUPPER_BOUND = function() { return
2016-08-18 11:15:59
651
转载 JS到底是值传递还是引用传递
在分析这个问题之前,我们需了解什么是按值传递(call by value),什么是按引用传递(call by reference)。在计算机科学里,这个部分叫求值策略(Evaluation Strategy)。它决定变量之间、函数调用时实参和形参之间值是如何传递的。按值传递(call by value)是最常用的求值策略:函数的形参是被调用时所传实参的副本。修改形参的值并不会影响实参。按引用传递(c
2016-08-17 15:04:40
318
转载 extend函数的理解
相信很多的小白都对extend这个函数有很多的疑惑,今天就把这个根据自己的理解和网上的资料整理了一下。extend方法:在各种js框架下的设计。这个函数的功能基本都是实现对象的拷贝功能,即将一个对象的所有属属性拷贝到另外一个对象上去,这个函数使用的频率也很高,如果我们要将一个类的所有方法拷贝到另外方法上去,使用这个方法很方便的。. 在百度tangram js 框架中的实现bai...
2016-08-16 14:38:46
5050
转载 JS中的call()和apply()方法
1、方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象。 说明: call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 如果没有提供 thisObj 参数,那么 G
2016-08-16 13:06:35
239
翻译 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-08-16 11:49:54
226
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人