深入理解JavaScript 函数

方法&函数

区别

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

以上是 深入理解JavaScript 函数 的全部内容, 来源链接: utcz.com/z/325475.html

回到顶部