javascript 中call与apply区别
1.call方法
官方(JavaScript手册):
调用一个对象的一个方法,以另一个对象替换当前对象。
call([thisObj[,arg1[,
arg2[, [,.argN]]]]])
参数
thisObj 可选项。将被用作当前对象的对象。
arg1, arg2, , argN
可选项。将被传递方法参数序列。
说明
call 方法可以用来代替另一个对象调用一个方法。call
方法可将一个函数的对象上下文从初始的上下文改变为由thisObj指定的新对象。
如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。
2.apply方法
官方(JavaScript手册):
应用某一对象的一个方法,用另一个对象替换当前对象。
apply([thisObj[,argArray]])
参数
thisObj 可选项。将被用作当前对象的对象。
argArray 可选项。将被传递给该函数的参数数组。
说明
如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。
如果
没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。
两者的区别:
两
者实现的功能是完全一样的,只是参数传递方式不一样,call是将各个参数以逗号(,)隔开,而apply是将所有参数组成一个数组进行传递。
参考代码:
function fun_one() {
this.a = "I'm string a";
this.b = "I'm string b";
//未定义this.c,但调用的是fun_two里面的,所以定不定义都无所谓;
this.fun =
function(p1,p2) {
var s = "this.a: " + this.a + "\nthis.b: " +
this.b + "\nthis.c: " + this.c + "\n\n其它参数:\np1="+p1+"\np2="+p2;
alert(s);
}
}
function fun_two() {
this.b = "I'm other string b";
//未定义this.a,所以返回undefined
this.c = "I'm string c";
}
var obj1 = new fun_one();
var
obj2 = new fun_two();
/*
&n
相关文档:
http://news.csdn.net/a/20100424/218105.html
JavaScript 的成功让人津津乐道,为 Web 网页编写 JavaScript 代码已经是所有 Web 设计师的基本功,这门有趣的语言蕴藏着许多不为人熟知的东西,即使多年的 JavaScript 程序员,也未能完全吃透。本文从7个方面讲述 JavaScript 中那些你不很熟知但非常实用的技巧。
简略语句
......
JavaScript就这么回事1:基础知识
1 创建脚本块
1: <script language=”JavaScript”>
2: JavaScript code goes here
3: </script>
2 隐藏脚本代码
1: <script language=”JavaScript”>
2: <!--
3: document.write(“Hello”);
4: // -->
5: </scri ......
原帖地址:http://www.followman.com/bbs/Topic-B11-T262.aspx
JavaScript动态响应ATL事件
相关讨论:http://topic.csdn.net/t/20061012/21/5078729.html
重
点:脚本传过来的对象是IDispatch接口,应该用IDispatch::Invoke来调用。如果传过来的是个function,那么DISPID
为0,如果是个对象,那么要先用GetIDsOfNames得 ......
以下事例为结合本人电脑而设计的参数,您也可改为自己的尺寸
<SCRIPT LANGUAGE="JavaScript">
var chicun;
chicun=screen.width;
if(chicun==1280||chicun==1440||chicun==1600)
{
<!--
function initEcAd() {
document.all.AdLayer1.style.posTop = -100;
document.all.AdLayer1.style.visibility = 'vis ......
javascript如何定义类呢?
面试的时候有学生被问到这个问题。
实际上javascript的方法就是一个对象。
利用这一点,我们可以使用javascript定义类。
如下例子所示。
<mce:script language="javascript"><!--
//javascript的面向对象的例子
function sayHi(){
alert("Hello ,"+this.name);
}
function get ......