1 / 5
文档名称:

JavaScript调用函数的方法.docx

格式:docx   大小:24KB   页数:5页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

JavaScript调用函数的方法.docx

上传人:顾生等等 2018/6/8 文件大小:24 KB

下载得到文件列表

JavaScript调用函数的方法.docx

相关文档

文档介绍

文档介绍:一次又一次的,我发现,那些有bug的Javascript代码是由于没有真正理解Javascript函数是如何工作而导致的(顺便说一下,许多那样的代码是我写的).JavaScript拥有函数式编程的特性,当我们选择面对它的时候,这将成为我们前进的阻碍.
  作为初学者,我们来测试五种函数调用的方法,从表面来看我们会认为那些函数与C#中函数的作用非常相似,但是我们一会儿可以看到还是有非常重要的不同的地方的,忽视这些差异无疑会导致难于跟踪的bug。首先让我们创建一个简单的函数,这个函数将在将在下文中使用,这个函数仅仅返回当前的this的值和两个提供的参数.
?
1
2
3
4
5
<script type="text/javascript">
function makeArray(arg1, arg2){
    return [ this, arg1, arg2 ];
}
</script>
最常用的方法,但不幸的,全局的函数调用
当我们学习Javascript时,我们了解到如何用上面示例中的语法来定义函数。
我们也知道调用这个函数非常的简单,我们需要做的仅仅是:
?
1
2
3
4
5
6
7
8
9
makeArray('one', 'two');
// => [ window, 'one', 'two' ]
Wait a minute. What's that window
alert( typeof );
// => undefined
alert( typeof );
// =>
('one', 'two');
// => [ window, 'one', 'two' ]
,在JavaScript中避免使用全局的成员,你是不会为之后悔的.
JavaScript函数调用规则1
在没有通过明确所有者对象而直接调用的函数中,如myFunction(),将导致this的值成为默认对象(浏览器中的窗口)。
函数调用
让我们现在创建一个简单的对象,使用 makeArray函数作为它的一个方法,我们将使用json的方式来声明一个对象,我们也来调用这个方法
?
1
2
3
4
5
6
7
8
9
10
11
//creating the object
var arrayMaker = {
    someProperty: 'some value here',
    make: makeArray
};
//invoke the make() method
('one', 'two');
// => [ arrayMaker, 'one', 'two' ]
// alternative syntax, using square brackets
arrayMaker['make']('one', 'two');
// => [ a