Tagged

JavaScript

A collection of 8 posts

JavaScript

浅谈php与JavaScript中的设计模式之工厂模式

前言 前段时间照抄了一大堆代码.结果发现自己根本没理解设计模式.最近也接触了php,正好把两者的设计模式给理解一下.参考书籍《JavaScript设计模式-张容铭》,《learn php设计模式》,《JavaScript设计模式与开发实践-曾探》 何为工厂方法模式 定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类所谓的决定并不是批模式允许子类本身在运行时做决定,而是指在编写创建者类时,不需知道创建的产品是哪一下,选择了使用哪个子类,就决定了实际创建的产品是什么。 from http://www.cnblogs.com/li-peng/archive/2013/02/17/2913568.html JavaScript中的工厂模式

JavaScript

手撸页面笔记

算是一篇水文了..最近手撸了一个页面地址为here .同时得出了一些笔记和一些疑问 笔记 媒体查询不应该嵌套在内,应该放在外. wrap-center应该在内部嵌套一个div而不是直接放在外部div rest css然后基于rem设计 媒体查询可以建立函数查询 疑问 用sass写的时候 是否应该一直嵌套下去?rem设计指的是整体rem还是文字rem?媒体查询是600一个档次还是分多个档次查询?

JavaScript

你不知道的JavaScript-上卷-读书笔记-part3

书评 豆瓣 这本书很适合初级前端开发者上升至中级前端开发者,很好的阐述了JavaScript的闭包,原型,类,编译,赋值的问题.而且这还是上卷,还会有中卷,下卷,等等之类的.我会从这本书里选取一些比较重要的内容放在这篇文章当中(实际上这本书全部内容都重要). let’s do it 对象关联 [[protorype]]机制就是存在于对象中的一个内部链接,它会引用其他对象.当在对象本身上未找到属性则会继续顺着[[prototype]]关系的对象上进行查找 创建关联 var foo={ something:function(){ console.log("tell me ") } } var bar=Object.create(foo); bar.something();//tell me Object.create会创建一个新对象(bar)并且把它关联到我们指定的对象(foo)

JavaScript

你不知道的JavaScript-上卷 读书笔记-part2

书评 豆瓣 这本书很适合初级前端开发者上升至中级前端开发者,很好的阐述了JavaScript的闭包,原型,类,编译,赋值的问题.而且这还是上卷,还会有中卷,下卷,等等之类的.我会从这本书里选取一些比较重要的内容放在这篇文章当中(实际上这本书全部内容都重要). let’s do it 对象 类型 JavaScript有六种主要类型 string number boolean null undefined object 简单基本类型(string,number,boolean,null,undefined)本身并不是对象,null有时候会被当做一种对象类型,但其实这是一个语言本身的bug,typeof null 的时候会返回字符串”object”,实际上null本身是基本类型.JavaScript万物并不都是对象.JavaScript本身有许多特殊的对象子类型,我们可以称之为复杂基本类型.函数就是对象的一个子类型.数组也是对象的一种类型,具备一些额外的行为. JavaScript内置对象 JavaScript还有一些对象子类型,通常被称为内置对象

JavaScript

你不知道的JavaScript-上卷 读书笔记-part1

书评 豆瓣 这本书很适合初级前端开发者上升至中级前端开发者,很好的阐述了JavaScript的闭包,原型,类,编译,赋值的问题.而且这还是上卷,还会有中卷,下卷,等等之类的.我会从这本书里选取一些比较重要的内容放在这篇文章当中(实际上这本书全部内容都重要). let’s do it 作用域 编译器原理简释 var a=2当我们看到var a=2的时候引擎和编译器会做什么呢? 遇到var a,编译器会询问作用域是否已经有一个该名称的变量存在于同一个作用域的合集中.如果是.编译器会忽略该声明,继续进行编译.否则它会要求作用域在当前的作用域合集中声明一个新的变量,并且命名为a. 接下来编译器会为这个引擎生成运行时所需的代码,这些代码被用来处理a = 2这个赋值操作.引擎运行时会首先询问作用域,在当前的作用域合集中是否存在一个叫a的变量,如果否,引擎就会使用这个变量;如果不是,引擎就会继续查找该变量. 引擎与作用域的对话 RHS引用是找到这个变量所在的地址,但是不赋值 赋值是等号做的事情LHS引用是赋值时把RHS找到的地址赋值给LHS function foo(a){ console.

JavaScript

nodejs与微博开发笔记

微博开发API 地址 github 开发工具 nodejs+express+request 申请微博API 首先去微博开发地址注册个开发者账号,然后填写个人身份认证下. 个人只能选微链接,不能选择微服务. 网站接入 我申请的是网站接入..可以先不提交审核拿来用..不知道为啥我审核总是不过.说是需要部署微博组件..囧 不过没关系我们主要关注以下的几个重要的内容. 网站信息-基本信息中的 App Key 与 App Secret 网站信息-测试账号中的 已关联测试账号 接口管理-授权机制中的 授权回调页和取消授权回调页 首先我们需要设置已关联账号和设置授权回调页和取消授权回调页设置关联账号就设置你个人微博 输入你个人微博名称即可.授权回调页我设置的是htttp://t.relsoul.com/oauth取消回调页我设置的是http://t.relsoul.com/calceloauth 安装nodejs与express request npm install nodejs express request --save 首先我们需要了解oath2.0认证

JavaScript

一次有意思的JavaScript试验题

今天群里的朋友发了一段代码,问最后的结果 var a=1; var b={ a:2, b:function(){ alert(this.a); }(), f:this.f=function(){ alert(this.a); } }; function f(){ alert(3); } f(); b.f(); (b.f)(); (0, b.f)(); 在浏览器中运行的结果是1,1,2,2,1跟我自己脑补的不一样…可能是技术还不够吧…于是在浏览器中运行并且分析了下. 第一次a是因为匿名函数自执行的缘故,this指向window,那么this.a就是window.a于是会弹出第一个1 f() 对象并没有作用域,其中this.f可以这样写 var