`
文章列表
第一章代码重用和优化 一、有关继承的一些笔记 1.在JS中,类的继承是可以通过prototype(原型方式),call等方式实现的,但是这种方式需要使用new来创建类,如果我们忘记使用类,那么this,返回值等问题就会出现,所以,需要考虑使用模块模式的方法, var serialMaker=function(){    //返回一个用来产生唯一字符串的对象。    //唯一字符串由两部分组成:前缀+序列号    //该对象包含一个设置前缀的方法,一个设置序列号的方法    //和一个产生唯一字符串的gensym方法    var prefix='';    var seq=0;    retur ...
HTML文档,至少是那些包含动态内容的HTML文档。通常不会被配置为可以进行缓存。所以,如果使用内联的CSS或是JS,那么它就不会被缓存起来。 使用外部JS或CSS,由于产生多个HTTP请求,所以本质上说外部JS或CSS是没有内联快的。 选取外部JS,CSS还是内联的, 参考标准有页面标准、空缓存和完整缓存、组件重用等因素。 此外,我的理解,一个参考标准就是,如果这个JS或者CSS所在的组件适合被缓存,那么就使用外部的方式,如果不适合被缓存,那么就使用内联的方式,比如,“每日一词”就不适合使用外部的方式把它缓存起来。 两全其美的方法:既可以获得内联的优势,又可以同时缓存外部文件 加载后 ...
转http://www.cnblogs.com/qlee/archive/2011/04/26/2028918.html 1.结构化方法遵循的基本原则 结构化方法的基本思想就是将待解决的问题看作一个系统从而用系统科学的思想方法来分析和解决问题结构化方法遵循以下基本原则 (1)抽象原则 ...

Https

阅读维基百科有关HTTPS的内容,记录下自己的一些思考 1.超文本传输安全协议:是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定.可以这样理解,HTTPS不是一个单独的协议,而是对工作在一加密连接 ...
call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 有两种使用call的方式, 第一:obj1.method1.call(obj2,argument1,argument2) //参数1,参数2是作为obj1的参数的 这里的call的作用就是把obj1的方法method放到obj2上,然后执行这个方法,后面的argument1..这些做为参数传入。 或者理解为obj2调用了obj1的方法,并把obj2自己的同名方法覆盖掉。 比如 function Class1() { this.name = "class1"; ...
参考http://hi.baidu.com/cjry_8854/item/585b445f577aab3494eb0513 这里列出几个值得注意的地方 一全局变量 变量的声明 JS解释器开始运行时,在执行任何JS代码前,会创建一个全局对象,并且JS解析器会在相应的代码段里寻找var声明的变量,把这个var ...
哈希(Hash)算法就是单向散列算法,它把某个较大的集合P映射到另一个较小的集合Q中,假如这个算法叫H,那么就有Q = H(P)。对于P中任何一个值p都有唯一确定的q与之对应,但是一个q可以对应多个p。 作为一个有用的Hash算法,H还应该满足:H(p)速度比较快; 给出一个q,很难算出一个p满足q = H(p);给出一个p1,很难算出一个不等于p1的p2使得 H(p1)=H(p2)。 正因为有这样的特性,Hash算法经常被用来保存密码,我们使用相应的哈希算法对于密码整体P(注意是整体P),计算出它的q,并进行存放。而在密码比对时,使用输入的密码经过哈希函数算出的q和我们已经在存放的该用户的 ...
一什么是SQL注入? 我的理解是在代表web表单提交的那个文本框中插入恶意的SQL语句,而设计不良的web程序忽略了相应的检查,这些SQL语句就会被数据库认为是正确合法的语句,从而造成破坏。 二SQL注入的原理是什么? 引用如果在组合SQL的命令字符串时,未针对单引号字符作取代处理的话,将导致该字符变量在填入命令字符串时,被恶意窜改原本的SQL语法的作用 比如 strSQL = "SELECT * FROM users WHERE (name = '" + userName + "') and (pw = '"+ passWord +"' ...
303:see other, 引用The response to the request can be found under another URI using a GET method. When received in response to a POST (or PUT/DELETE), it should be assumed that the server has received the data and the redirect should be issued with a separate GET message. 重定向请求到新的URL,而且客户端应当采用 GET 的方式访 ...
理解渐进增强(Progressive Enhancement) 我们在这里用渐进增强和优雅降级做对比。 优雅降级和渐进增强都考虑网站在各种设备的各种浏览器上如何良好运转。两者区别的关键在于它们各自关注的焦点,以及这种关注对工作流程的 ...
向后兼容和向前兼容,什么是向后兼容?我的理解是“我们之前开发的产品”是向后兼容的,后开发的版本一定要能够使用旧的版本,就好像word07可以打开在word03中编辑的文本(03打不开07的)。 一句话总结,后面版本的程序可以打开前面版本的程序。 而什么是向前兼容?我的理解是“我们之前开发的产品”是向前兼容,我们新开发的版本一定要可以被老版本的使用,比如,word03可以打开word07中编辑的文档,它自动忽略新的功能。 一句话总结,前面版本的程序可以打开后面版本的程序。
阅读了[url]http://www.codinghorror.com/blog/2009/02/rate-limiting-and- velocity-checking.html[/url] 思考了以下问题。 一为什么要建立网站限制? 因为网络上的人良莠不齐,有些人可能会恶意攻击你的网站,我们必须给网站 加上一些限制。 二加上什么样的限制? 我们往往加上操作的“速率限制”,也就是某个特定时间内某种操作可以执行 的次数,虽然这种限制并不是科学的,但是却是必须的,比如,我们必须限制错误密码输入的次数。 我们常用的速率限制有哪些呢? 1.限制同一个用户或者一个应用程序接口在一定时间内可以执 ...
一什么是nofollow? nofollow 是一个HTML标签的属性值,告诉搜索引擎“不要追踪此网页上的链接”或不要追踪此特定链接。比如说,如果网页A 有一个链接指向网页B,<a href = "www.B.com" rel = "follow">,则搜索引擎不把A网页计算入B网页的反向链接。什么是反向 链接?比如,A网页指向B网页,A->B,那么对B来说,这个链接就是反向链接。 二nofollow的历史 nofollow一开始应用在网页级的标记中,指定搜索引擎不要追踪网页上的任何出站链接。如果我们要把他应用在单独的连接上就 要将 ...
encodeURI 和 encodeURIComponent都是ECMA-262标准中定义的函数,所有兼容这个标准的语言(如JavaScript, ActionScript)都会实现这两个函数。它们都是用来对URI (RFC-2396)字符串进行编码的全局函数,但是它们的处理方式和使用场景有所不同。为了解释它们的不同,我们首先需要理解RFC-2396中对于URI中的字符分类 保留字符(reserved characters):这类字符是URI中的保留关键字符,它们用于分割URI中的各个部分。这些字符是:";" | "/" | "?" ...
首先我们要理解什么是JS跨域的由来! 我是这样理解的,因为HTTP是无状态的协议,所谓无状态的就是不像FTP协议有连接,断开之分,用户每次打开一个网页,都可以理解为一次独立的访问,这样就造成了相同网站上的不同网页都需要输入用户名和密码。为了解决这个问题,就要考虑使用Cookie,绝大部分网站都会进行一些cookie访问,那么着就造成了一个危险:别的网站可以通过这些用户名和密码,“登陆“你的账号去进行一些操作。为了阻止这个问题,浏览器就会限制JS去访问不同域的网站资源。 这里需要注意两点,第一,这个域的理解,这个域就是URL的首部,指的是window.location.protocol +wind ...
Global site tag (gtag.js) - Google Analytics