我一直对这两者感到困惑。据我了解,方法总是使用点符号,例如:
$( "li.third-item" ).nextAll().addBack().css( "background-color", "red" );
在本例中,nextAll()
, addBack()
和.css()
都是方法。
同样,函数也是直接调用的。就像,
make_tea();
我想通过查看某个东西的使用方式来确定它是函数还是方法。是否使用PersonOne.run_now()
始终保证run_now()
是一种方法吗?可以run_now()
如果我们使用 .
仍然是一个函数访问它?
我的问题是“当我们使用 .
调用函数时,它会成为方法吗?”
最佳答案
方法只是存储在对象
属性中的函数
引用。 Javascript 中的方法仅仅是一个概念,实际上并不是现有的语法部分。另外,Javascript 中没有 method
关键字。
function foo() { /* whatever */ }
var bar = {};
bar.baz = foo;
// You'd consider this a function call
foo();
// While the following is actually syntactically also a function call
// you might consider baz a "method of the bar object"
bar.baz();
// and thus bar.baz() would then be a "method call".
请注意,要访问对象的属性,您有两种可能的方式:object.property
和 object[propertyName]
其中 propertyName
是一个包含属性名称的字符串。
所以
bar.baz()
实现与 完全相同并且与
完全相同bar["baz"]().
关于javascript - 如何区分方法和函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41260702/