CrazyJS,疯狂的JS

JS 序列补全函数的循环和不循环写法

案列:需要将给定的数字前面填充0,以达到指定的位数。 如:23,补全到8位,补全符号为0,要求的结果为:00000023 方法一:使用循环 此方法算法:在给定的字符(串)前 通过循环给定的长度减去给定字符(串)长度(len-n.length)次添加填充字符 r ,最后得到结果。 代码: //len 为总长度,r为补全的符号,n为给定的字符(串) function buquan(len,r,n){     var numstr = n.toString();     var l=numstr.length;     if (numstr.length>=len) {return numstr;}           for(var  i = 0 ;i<len – l;i++){   [...]

JS 中return的用法

【这是在百度知道回答时写的,希望对需要的人有用】 总体上来说,return一般是用在函数中的用来向解析器表达退出函数并返回调用函数空间的命令。 在JS这个专门用于web的程序设计语言来讲,其使用环境最为广泛的就是在浏览器环境下使用。W3C规定了一些供JS程序和页面代码进行交互的接口,如浏览器级别的BOM(BrowserObjectModel,浏览器对象模型)和DOM(Document Object Model,文档对象模型)。通过这些接口,JS程序就可以畅快淋漓地和页面进行开心的“交谈”和“合作”了。 在函数中,表示返回: 1)退出函数空间。 1 2 3 4 5           function a(){            var aa=0;            return ;            var bb=0;         [...]

self、this、call、apply、prototype、initialize、

一、 起因 那天用到prototype.js于是打开看看,才看几行就满头雾水,原因是对js的面向对象不是很熟悉,于是百度+google了一把,最后终于算小有收获,写此纪念一下^_^。 prototype.js代码片段 代码如下: var Class = { create: function() { return function() { this.initialize.apply(this , arguments); } } } // Class使用方法如下 var A = Class.create(); A. prototype={ initialize:function(v){ this .value=v; } showValue:function(){ alert(this.value); } } var a = new A(‘helloWord!’); a. showValue();//弹出对话框helloWord! l initialize是什么? l apply方法是干什么的? l arguments变量呢? l 为什么new A [...]

JS性能优化【转】

下面是一些关于客户端JS性能的一些优化的小技巧: 1.[顶]关于JS的循环,循环是一种常用的流程控制。JS提供了三种循环:for(;;)、while()、for(in)。在这三种循环中 for(in)的效率最差,因为它需要查询Hash键,因此应尽量少用for(in)循环,for(;;)、while()循环的性能基本持平。当然,推 荐使用for循环,如果循环变量递增或递减,不要单独对循环变量赋值,而应该使用嵌套的++或--运算符。 2.如果需要遍历数组,应该先缓存数组长度,将数组长度放入局部变量中,避免多次查询数组长度。 3.局部变量的访问速度要比全局变量的访问速度更快,因为全局变量其实是window对象的成员,而局部变量是放在函数的栈里的。 4.尽量少使用eval,每次 [...]

JavaScript中的arguments,callee,caller[转]

在提到上述的概念之前,首先想说说javascript中函数的隐含参数: arguments: arguments 该对象代表正在执行的函数和调用它的函数的参数。 [function.]arguments[n]参数 function:选项。当前正在执行的 Function 对象的名字。  n :选项。要传递给 Function 对象的从0开始的参数值索引。说明Arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象。Arguments是一个类似数组但不是数组的对象,说它类似数组是因为其具有数组一样的访问性质及方式,可以由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性length。还有就是arguments对象存储的是实际传递给函数的参数,而不局限于函数声明所定义的参数列表 [...]

JS日历|旅游网日历|简单的日历

前面在百度知道上回答问题时修改了一个旅游网的日历,修改的原因是原来的太难用了,不易调用。于是就有了这个版本。   界面如图: 调用代码如下: <script type=”text/javascript“> //c:容器,y:年,m:月,a:出发时间json,f:是否显示双日历,fu:回调调 var para={‘c’:’calendarcontainer’, ‘y’:2014, ‘m’:2, ‘a’:{ ‘d1′:’2014-01-30’,//最早时间 ‘d2’:’2014-05-05’//最晚时间 }, ‘f’:1,//显示双日历用1,单日历用0 ‘clickfu’:function  [...]