js中函数知识点总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

js中函数知识点总结
本文将对 JavaScript 函数的知识点进行总结,包括函数的定义、参数、返回值、作用域、闭包、箭头函数等。

1. 函数的定义
在 JavaScript 中,你可以用 function 关键字来定义一个函数。

以下是一个简单的函数定义示例:
```javascript
function add(a, b) {
return a + b;
}
```
2. 函数的参数
函数可以接受任意数量的参数,包括零个参数。

在上面的示例中,add 函数接受两个参数a 和 b。

在调用函数时,你可以为这些参数传递值,例如:
```javascript
var result = add(2, 3);
```
在 JavaScript 中,函数的参数是没有类型的。

这意味着你可以向函数传递任意类型的值,函数会根据需要进行类型转换。

此外,JavaScript 还支持默认参数和剩余参数。

默认参数允许你在定义函数时为参数提供默认值,例如:
```javascript
function greet(name="World") {
console.log("Hello, " + name);
}
greet(); // 输出 "Hello, World"
greet("Alice"); // 输出 "Hello, Alice"
```
剩余参数则允许你将一个参数列表转换成一个数组,例如:
```javascript
function sum(...numbers) {
return numbers.reduce((acc, cur) => acc + cur);
}
sum(1, 2, 3); // 输出 6
```
3. 函数的返回值
函数可以返回一个值,也可以不返回值。

在 JavaScript 中,返回值使用 return 关键字指定。

例如:
```javascript
function subtract(a, b) {
return a - b;
}
var result = subtract(5, 3); // result 的值是 2
```
如果函数没有显式地指定返回值,它将返回 undefined。

4. 函数的作用域
在 JavaScript 中,变量的作用域是函数级别的,也就是说,变量只在声明它的函数内部可见。

这意味着在函数内部声明的变量对函数外部是不可见的。

例如:
```javascript
function sayHello() {
var message = "Hello";
console.log(message); // 输出 "Hello"
}
console.log(message); // 抛出 ReferenceError: message is not defined
```
如果在函数中使用 var 关键字声明变量,这个变量将成为函数私有的。

而如果在函数中不使用 var 声明变量,这个变量将成为全局变量。

例如:
```javascript
function foo() {
bar = "hello";
}
foo();
console.log(bar); // 输出 "hello"
```
在这个例子中,由于没有使用 var 声明,bar 变量成为了全局变量。

5. 闭包
在 JavaScript 中,闭包是指函数和其相关的词法环境的组合。

这意味着一个函数可以访问到其定义时的词法环境中的变量。

闭包在 JavaScript 中可以用于实现模块模式、封装变量等。

```javascript
function outer() {
var message = "Hello";
function inner() {
console.log(message);
}
return inner;
}
var fn = outer();
fn(); // 输出 "Hello"
```
在这个例子中,inner 函数形成了一个闭包,可以访问到外部函数 outer 的词法环境中的message 变量。

6. 箭头函数
ES6 引入了箭头函数,它是一种更简洁的函数定义方式。

箭头函数可以省略 function 关键字和 return 关键字,并且内部的 this 关键字指向定义时的环境。

```javascript
var add = (a, b) => a + b;
var square = x => x * x;
```
在这个例子中,箭头函数 add 接受两个参数 a 和 b,并返回它们的和。

箭头函数 square 接受一个参数 x,并返回它的平方。

7. 函数的方法
在 JavaScript 中,函数也是对象,因此也可以有自己的方法。

最常见的函数方法是 call()、apply() 和 bind()。

call() 方法允许你调用一个函数,并将一个指定的 this 值和一系列参数传递给这个函数,例如:
```javascript
function greet(name) {
console.log("Hello, " + name);
}
greet.call(null, "World"); // 输出 "Hello, World"
```
apply() 方法类似于 call() 方法,不同之处在于它接受一个包含函数参数的数组作为第二个参数,例如:
```javascript
function greet(name) {
console.log("Hello, " + name);
}
greet.apply(null, ["World"]); // 输出 "Hello, World"
```
bind() 方法允许你创建一个新的函数,其中 this 值被设定为指定的值,例如:
```javascript
function greet(name) {
console.log("Hello, " + name);
}
var helloWorld = greet.bind(null, "World");
helloWorld(); // 输出 "Hello, World"
```
综上所述,JavaScript 函数是语言中重要的特性之一,它提供了一种组织和重用代码的机制。

通过本文讨论的知识点,你可以更加深入地了解 JavaScript 函数的工作原理和用法,从而写出更加健壮和高效的 JavaScript 代码。

相关文档
最新文档