方法&函數
區別
1.function 是更通用的概念,如數學、編程
2.method 是面向對象中的概念,一般與類或對象成對出現
關系
1.對象的屬性可以是任意類型
2.對象的屬性如果是函數類型,它就叫做這個對象的方法
3.所以方法的本質還是函數
函數的調用
1.fun()
2.obj.fun()
3.fun.call()
函數的屬性和方法
1.name
2.length
3.toString
作用域
變量不是哪里都可以使用
全局變量(跨文件)
var n = 1;function fn(){ console.log(n); // 1}
局部變量(只能在函數內部訪問)
function fn1(){ var n = 2;}console.log(n); // Uncaught ReferenceError: number is not defined
函數作用域
•函數能獨立出一個作用域
var n = 1;function f(){ var n = 2; console.log(n); // 在當前作用域進行變量尋找}f();console.log(n); // 在全局作用域進行變量尋找
•函數里面可以訪問函數外面
var n = 1;var x = function(){ console.log(n);};function f(){ var n = 2; x();}f();
•自調用匿名函數
!function (){ var n = 1; console.log(n);};~function (){ var n = 1; console.log(n);};(function(){ var n = 1; console.log(n);}());
•閉包
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>JS Bin</title> </head> <body> <ul> <li>aaa</li> <li>bbb</li> <li>ccc</li> <li>ddd</li> <li>eee</li> </ul> <script> var items = document.getElementsByTagName('li'), i = 0; for (i; i < items.length; i++) { items[i].onclick = function(e){ alert(i); }; } </script> </body></html>
以上這篇深入理解JavaScript 函數就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答