方法&函数
区别
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 函数就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持查字典教程网。