深入理解JavaScript 函数

时间:2021-05-18

方法&函数

区别

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 函数就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章