1、关于javascript的apply和call函数 prototype.js中用了大量的apply和call函数,不注意会造成理解偏差。 官方解释:应用某一对象的一个方法,用另一个对象替换当前对象。 apply与call的区别是第二个参数不同。apply是 数组或者arguments 对象。而call是逗号隔开的任何类型。 apply,call方法最让人混淆的地方也是apply,call的特色。但最好不要滥用。 能改变调用函数的对象。如下例,函数中用到this关键字,这时候this代表的是appl...
加法赋值运算符 (+=)。将变量值与表达式值相加,并将和赋给该变量。 在写JavaScrpt的时候经常会用到,说实话我以前不是很理解。看了很多的代码感觉就是因为一个变量太长了用它来分几行来写罢了。但它和解决了我其他的问题。 在一些时候我们需要使用一系列的HTML代码来作为变量,而HTML里面有时时会包含一些引号。比如 代码如下:var Nameform=;这时候你会发现引号的问题始终困扰着你。这时候用'+='就解决问题了。 代码如下:va...
JavaScript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。void 操作符用法格式如下: 1. javascript:void (expression)2. javascript:void expression expression 是一个要计算的 JavaScript 标准的表达式。表达式外侧的圆括号是可选的,但是写上去是一个好习惯。 (实现版本 Navigator 3.0 )你可以使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。 下面的代码创建了一个超级...
代码如下: /*Javascript中暂停功能的实现 Javascript本身没有暂停功能(sleep不能使用)同时 vbscript也不能使用doEvents,故编写此函数实现此功能。 javascript作为弱对象语言,一个函数也可以作为一个对象使用。 比如: function Test(){ alert("hellow"); this.NextStep=function(){ alert("NextStep"); } } 我们可以这样调用 var myTest=new Test();myTest.NextStep(); 我们做暂停的时候可以吧一个函数分为两部分,暂停操...
Javascript顺序执行的实现:http://www.cnlei.org/blog/article.asp?id=297JavaScript系列-同步还是异步:http://blog.iecn.net/blog/html/do-showone-tid-966.htmlJavascript中暂停功能的实现 :http://blog.csdn.net/snakegod/archive/2004/09/22/112810.aspxJavaScript Sleep函数 :http://blog.csdn.net/gaooo/archive/2007/02/25/1514096.aspx
在面向对象编程语言中,对于this关键字我们是非常熟悉的。比如C++、C#和Java等都提供了这个关键字,虽然在开始学习的时候觉得比较难,但只要理解了,用起来是非常方便和意义确定的。JavaScript也提供了这个this关键字,不过用起来就比经典OO语言中要"混乱"的多了。 下面就来看看,在JavaScript中各种this的使用方法有什么混乱之处? 1、在HTML元素事件属性中inline方式使用this关键字: // 可以在里面使用this ">divis...
依稀还记得,在学习C语言的库函数时,很多字符串操作相关的函数都会返回和结果相关的指针。其实这个返回值很多时候都并不是非常必要,因为在我们的传入的参数中,十有八九已包含了这个指针。而加上这个返回值的最大好处就是,可以让我们方便的书写出级联表达式。但是这些年的实际工作中,越发觉得级联表达式是个魔鬼馅饼。 比如在C语言中,我们熟悉的字符串操作函数strcpy,strcat等,它们的原形一般是: extern char *strxxx(...
JavaScript有许多小窍门来使编程更加容易。其中之一就是eval()函数,这个函数可以把一个字符串当作一个JavaScript表达式一样去执行它。以下是它的说明 Eval 函数 功能:先解释Javascript代码,然后在执行它 用法:Eval(codeString) codeString是包含有Javascript语句的字符串,在eval之后使用Javascript引擎编译。 举个小例子: var the_unevaled_answer = "2 + 3"; var the_evaled_answer = eval("2 + 3"); alert("the un-...
在Javascript中 利用 document.selection 可以创建 textRange。 但其实不是什么时候都可以创建的。 我们可以利用 document.selection.type 来判断当前选中的是文本还是对象。 document.selection.type 返回三个值 "None" "Text" "Control" 只有当返回值是 Text 时,创建的textRange才是有效的。
定义和用法 eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。 语法 eval(string) 参数 描述 string 必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。 返回值 通过计算 string 得到的值(如果有的话)。 说明 该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。 如果试图覆盖 eval...
防止重复点击可以添加一个开关,让这个开关默认为true,第一次点击将其变为false,点击事件的执行需要判断这个开关是否为true,为true执行,false不执行。例子如下:var isclick= true; function click(){if(isclick){isclick = false;//下面添加需要执行的事件...} }当然,如果只是防止点击过快,还可以设置定时器,在一定时间后,自动将开关变为true,下面例子就是在500毫秒后,开关自动变为true。var isclick= true; function clic...
原文出处: http://www.dnew.cn/post/196.htm 先看下下面几种写法 1.function f(x){return x*x;};f(x); 2.(function(x){return x*x;})(x); 3.(function(x){return x*x;}(x)); 第一种我们应该都很熟悉了,这是我们经常使用的写法。第二第三种都是匿名函数的写法。 -------------------------------------------------------------------------------- 第二种 可以这样理解: var f=function(x) {return x*x;};f() 那我们不通过f这个变...
了很久,始终没想出解决方案,大伙给点思路吧. var fruit = new Array(3); fruit[0] = new Array("苹果", "a"); fruit[1] = new Array("苹果", "a"); fruit[2] = new Array("橘子", "2"); for (i=0; i [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
JavaScript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。 void 操作符用法格式如下: 1. javascript:void (expression) 2. javascript:void expression expression 是一个要计算的 JavaScript 标准的表达式。表达式外侧的圆括号是可选的,但是写上去是一个好习惯。 (实现版本 Navigator 3.0 ) 你可以使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。 下面的代码创建了一个超...
Javascript是一门弱类型的语言,声明变量不需要声明其类型,var x 就可以等于任何类型的值。 比如: var str = "string...."; var arr = ["this","is","array"]; var obj = {name:"caizhongqi",age:26,sex:"male"}; 这些都是正确的,这似乎非常简单方便,但是这种方便也会带来一些令人难于捉摸的意外,看看下面的例子(例1): var x = "this is string"; var y = x; x="ni hao"; alert(y) 你可能一下子知道alert出来的就是“...