于是就测试了下:[code]varstringToDom=function(text){vardoc;if(window.ActiveXObject){doc=newActiveXObject("MSXML2.DOMDocument");doc.loadXML(text).documentElement;}else{doc=(newDOMParser()).parseFromString(text,"text/xml");}returndoc;}varxmlDoc=stringToDom("<body><ahref='a'>a</a><ahref='b...
http://www.jb51.net/article/22251.htm
向数据层、业务逻辑层、UI或输出层添加缓存支持。内存现在非常便宜—因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很大的性能提高。缓存可以掩盖许多过失缓存是一种无需大量时间和分析就可以获得“足够良好的”性能的方法。这里再次强调,内存现在非常便宜,因此,如果您能通过将输出缓存30秒,而不是花上一整天甚至一周的时间尝试优化代码或数据库就可以获得所需的性能,您肯定会选择缓存解决方案(假设可以接受30秒的旧数据)。缓存正是那些利用20%付出获得80%回报的特性之一,因此,要提高性能,应该首先想到缓存。不过,如果设计很糟糕,最终却有可能带来不良的后果,因此,您当然也应该尽量正确地设计应用程序。但...
http://www.jb51.net/article/22207.htm
0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。2、$row[’id’]的速度是$row[id]的7倍。3、echo比print快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo$str1,$str2。4、最好使用Foreach执行循环,在执行for循环之前...
http://www.jb51.net/article/22193.htm
原理基本是这样,如果传入的是字符串,那么让它们变成一个元素节点,不过这元素节点也可以有许多层,在最内层把要包裹的元素放进。把字符串变成元素节点的方法有如下几个。1,createElement,IE可以连元素属性也一起创建,但只能创建一层。2,innerHTML,不过需要对原来的字符串进行处理,IE与FF都有许多意想不到的默认行为,可以为你多加一点东西或少加一点东西。3,createContextualFragment,由于Opera的行为有点怪异,需要选中修改元素的位置。经日本人的测试,它转换字符串成节点的效率比innerHTML高多了,也安全多了,真是强者愈强,弱者愈弱。如果是传入元素节点,...
http://www.jb51.net/article/22179.htm
[code]<?php$memcachehost='localhost';$memcacheport='11211';functionmicrotime_float(){list($usec,$sec)=explode("",microtime());return((float)$usec+(float)$sec);}functionruntime($t1){returnnumber_format((microtime_float()-$t1)*1000,4).'ms';}$starttime=microtime_float();$cache_time='30';echo"init===...
http://www.jb51.net/article/22144.htm
因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。2、$row[’id’]的速度是$row[id]的7倍。3、echo比print快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo$str1,$str2。4、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。5、注销那些不...
http://www.jb51.net/article/22128.htm
1.从GoogleCode加载jQueryGoogleCode上已经托管了多种JavaScript类库,从GoogleCode上加载jQuery比直接从你的服务器加载更有优势。它节省了你服务器上的带宽,能够很快的从Google的内容分布网络(CDN)上加载JS类库。更重要的是,如果用户访问那些发布在GoogleCode上的站点后它会被缓存下来。这样做很有意义。有多少站点使用了没有被缓存的相同jQuery副本,而这些很容易做到,引入:<scripttype="text/javascript"src="http://ajax.googleapis.com/ajax/libs/jquery/1...
http://www.jb51.net/article/22097.htm
如果你所在公司的开发环境或者项目的开发环境处于单一语言的开发环境之中,框架不适用,因为框架的使用范围之一就是针对一个项目中存在多个语言开发的业务模块,而新项目都需要这些模块的功能,按照以前的习惯,肯定是重新开发,至少也是将其他的语言开发的业务功能变成webservice接口供新代码调用,在这种情况下,本文讨论的框架就可以派上用场并且还能在客户端消除语言差异,只使用纯javascript和html静态代码进行开发。当然即使在单一的语言环境下,仍然可以使用该模型进行开发,不过开发人员就无法享受到各种优秀的服务端控件(Asp.net控件,专门为java开发的控件等等),只能使用纯javascript...
http://www.jb51.net/article/21886.htm
虽然这个集合的key只能是String类型,不像Java里面的各种集合类能够使用各种对象作为Key,但对于实现一般的客户端JS功能来说,已经是足够用了。同样,因为所有的JS内部对象都继承自Object对象,所以实际上JS的Array对象也可以使用字符串来做为数组的下标,就像PHP中的数组变量一样。来自鸟食轩。数组是JavaScript提供的一个内部对象,它是一个标准的集合,我们可以添加(push)、删除(shift)里面元素,我们还可以通过for循环遍历里面的元素,那么除了数组我们在JavaScript里还可以有别的集合吗?由于JavaScript的语言特性,我们可以向通用对象动态添加和删除属...
http://www.jb51.net/article/21762.htm
functionStringBuffer(){this.array=newArray();}StringBuffer.prototype.append=function(value){this.array[this.array.length]=value;returnthis;}StringBuffer.prototype.toString=function(){var_string=this.array.join("");return_string;}...
http://www.jb51.net/article/21552.htm
先看看一下两段代码吧,它们分别用for循环和正则表达式来检测字符串的字节长度:for循环检测字符串的字节长度方法一:[code]varlenFor=function(str){varbyteLen=0,len=str.length;if(str){for(vari=0;i<len;i++){if(str.charCodeAt(i)>255){byteLen+=2;}else{byteLen++;}}returnbyteLen;}else{return0;}}[/code]使用方法varstrlength=lenFor(str)for循环检测字符串的字节长度方法二:[code]fun...
http://www.jb51.net/article/21343.htm
