07 2012 档案

摘要:话说面向对象开发有三大原则,单一职责原则,开放-封闭原则,依赖倒转原则。什么是单一职责原则,对一个类来说,或者对一个函数来说,应该仅有一个能引起它变化的原因。也就是说,每个函数只做一件事情。 在我的理解里,用面向函数式开发的思路来说,就是一个函数不能改变全局变量,而只是运算,返回结果。什么是开发-封闭原则, 就是函数的扩展是开发的,对函数的修改是封闭的。需求一定会变化,但我们不能预测其变化。所以等到变化一发生我们就采取行动。对那个变化进行抽象。举个例子,本来是叫你写个加法程序,你写了个类实现加法功能。后来要你加个减法功能,你重构这个类,增加一个抽象的运算类,加法类继承运算类,减法类也继承运算类 阅读全文
posted @ 2012-07-29 13:52 草珊瑚 阅读(171) 评论(0) 推荐(0) 编辑
摘要:0.默认块级元素会自动向右伸展,块级元素设置width属性后,盒子所占屏幕宽度是width+padding+border+margin 1.标准DOM流里,相邻块级元素之间的竖直距离不是margin-bottom和margin-top的总和,而是两者中的较大者。2.父子关系的盒子,子盒子的margin以父块的content作为参考。(如果子元素的高度超过父盒子的height值,IE和Firefox出现不同效果) 3.当一个盒子设置了float属性,表面它摆脱了标准流,它的弟弟盒子会取代它的位置。但是它的弟弟盒子的content会围绕整个哥哥盒子。4.设置浮动的盒子只影响弟弟元素,不影响哥哥元素 阅读全文
posted @ 2012-07-23 08:42 草珊瑚 阅读(351) 评论(0) 推荐(0) 编辑
摘要:两个节点之间可能存在哪些关系?父子节点,兄弟节点,后代节点,祖先节点。通常子节点在childNodes属性里,以及attributes属性里。 通常情况是,文本节点没有子节点。document节点没有父节点。如何在节点之间任意移动?要想移动,必先找到该节点。 首先查找元素节点有两种方式,一种是getElementById,另一种是getElementsByName。第一种就直接返回某个节点,第二种返回的是节点列表。 这两种查找方式很大程度上忽略了document结构。<!DOCTYPEhtml><html><head><title>Hacking 阅读全文
posted @ 2012-07-08 16:46 草珊瑚 阅读(942) 评论(0) 推荐(0) 编辑
摘要:首先new Date("2011-12-31");输出的是 Date {Fri Dec 30 2011 18:00:00 GMT-0600 (CST)}这可能与你的操作系统时区以及浏览器有关。new Date("2011-12-31").toString();输出的是"Fri Dec 30 2011 18:00:00 GMT-0600 (CST)"那么,有没有正常点的输出时间呢?new Date("2011-12-31").toUTCString();输出的是"Sat, 31 Dec 2011 00:00 阅读全文
posted @ 2012-07-06 12:59 草珊瑚 阅读(2239) 评论(0) 推荐(0) 编辑
摘要:数据冗余,用空间换取空间。最常见的就是,关系型数据库设计,故意加其它table出现过的字段,然后查询某些数据就不用跨表查询,这样查询效率较高,这是优点。优点之后是缺点,缺点就是,修改数据,要跨表修改。那么,逻辑冗余呢?我遇到的情况之一就是,js自身的bug了,就是浮点数运算,偶尔会算着算着,突然冒出个结果是.0000000000之类。(这个呢,本身就是语言错误,那么我们要不要进入这个语言的源代码,来改写我们的js代码。可以,但代价高。而且,语言自己也会升级,当发现这是个bug,下个版本大多数情况下会修复。于是你以前写的代码很可能被废弃了。)于是,在js浮点数计算里面,基本用toFixed(n) 阅读全文
posted @ 2012-07-02 19:11 草珊瑚 阅读(622) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示