扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1:方法调用模式。
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、微信小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了盐津免费建站欢迎大家使用!
请注意this此时指向myobject。
/*方法调用模式*/
var myobject={
value:0,
inc:function(){
alert(this.value)
}
}
myobject.inc()
2:函数调用模式
请注意this此时指向window
/*函数调用模式*/
var add=function(a,b){
alert(this)//this被绑顶到window
return a+b;
}
var sum=add(3,4);
alert(sum)
3:构造器调用模式
javascript语言精粹一书建议摒弃这中方式。因为有更好的方式。这里先不介绍。下次发表博文的时候贴出来。
会在这里加一个连接。
/*构造器调用模式 摒弃*/
var quo=function(string){
this.status=string;
}
quo.prototype.get_status=function(){
return this.status;
}
var qq=new quo("aaa");
alert(qq.get_status());
4:apply调用模式
==我们可以来看一个更有用的apply实例。看最下面的代码。
/*apply*/
//注意使用了上面的sum函数
//与myobject
//这中调用方式的优点在于可以指向this指向的对象。
//apply的第一个参数就是this指针要指向的对象
var arr=[10,20];
var sum=add.apply(myobject,arr);
alert(sum);
通过JavaScript中的两个方法——useService和callService来调用一个已存在的Web服务
callService这个方法的语法:
iCallID = sElementID.sFriendlyName.callService([oCallHandler], funcOrObj, oParam);
iCallID是调用服务后返回的ID。
sElementID是useService方法的一个控件元素ID。稍后讲如何用userServie。
sFriendlyName是服务名,比如.NET中Default.asmx,则这里是Default。
oCallHandler是处理响应结果的回调函数,因为有些请求无需关注响应结果,在这里是可选参数。
funcOrObj是web服务中的方法,在.NET中便是标有[WebMethod]的一些公用方法。
oParam是Web Method中的参数,可以是0,1,2,…个参数。
useService语法:
useService刚开始让我费解的是哪里来的这个方法,后来发现我们需要去微软官方上下载一个叫webservice.htc的文件。
下载完这个文件,将其放到根目录下,在你的html里写上这样一段代码就轻松搞定:
body style="behavior: url(webservice.htc)"/
在onload时初始化web服务,初始化代码如下:
var iCallID;
function init() {
serviceZivsoft.useService("Default.asmx?WSDL", "Default");
}
关于useService更详细的解释,可以去MSDN上查阅,用法还是比较简单的。
我也没怎么看明白,函数已经定义了,然后又调用一次,本来下面就会调用一次
这是第一次调用,
这里好像又调用了一次。。这是老师写的么,还有注释,问问老师吧。
Javascript中定义函数的方式有多种,函数直接量就是其中一种。如var fun = function(){},这里function如果不赋值给fun那么它就是一个匿名函数。好,看看匿名函数的如何被调用。 方式1,调用函数,得到返回值。强制运算符使函数调用执行(function(x,y){ alert(x+y); return x+y; }(3,4)); 方式2,调用函数,得到返回值。强制函数直接量执行再返回一个引用,引用再去调用执行(function(x,y){ alert(x+y); return x+y;} )(3,4); 这种方式也是很多库爱用的调用方式,如jQuery,Mootools。 方式3,使用voidvoid function(x) { x = x-1; alert(x);}(9);
这样是不行的
如果你想直接调用这个ex()
script
function
ex()
{
…………
}
ex();//这样就可以调用了
/script
放在标签里面调用函数,你需要事件来驱动
body
onload
=
"ex()"
//你需要指明调用函数的事件
……
/body
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流