🎬 HoRain云小助手:个人主页
🔥 个人专栏: 《Linux 系列教程》《c语言教程》
⛺️生活的理想,就是为了理想的生活!
⛳️ 推荐
前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。
专栏介绍
专栏名称 | 专栏介绍 |
《C语言》 | 本专栏主要撰写C干货内容和编程技巧,让大家从底层了解C,把更多的知识由抽象到简单通俗易懂。 |
《网络协议》 | 本专栏主要是注重从底层来给大家一步步剖析网络协议的奥秘,一起解密网络协议在运行中协议的基本运行机制! |
《docker容器精解篇》 | 全面深入解析 docker 容器,从基础到进阶,涵盖原理、操作、实践案例,助您精通 docker。 |
《linux系列》 | 本专栏主要撰写Linux干货内容,从基础到进阶,知识由抽象到简单通俗易懂,帮你从新手小白到扫地僧。 |
《python 系列》 | 本专栏着重撰写Python相关的干货内容与编程技巧,助力大家从底层去认识Python,将更多复杂的知识由抽象转化为简单易懂的内容。 |
《试题库》 | 本专栏主要是发布一些考试和练习题库(涵盖软考、HCIE、HRCE、CCNA等) |
目录
⛳️ 推荐
专栏介绍
JavaScript 函数定义
主要定义方式
1. 函数声明(函数语句)
2. 函数表达式
3. IIFE (立即调用函数表达式)
4. 箭头函数(ES6新增)
5. 函数生成器声明和表达式(ES6新增)
函数定义的关键特性
示例
JavaScript 函数定义
JavaScript 函数是通过function关键字定义的可重复执行代码块,是 JavaScript 中的基本构建单元。以下是 JavaScript 函数的定义方式和相关特性:
主要定义方式
1. 函数声明(函数语句)
这是最传统的函数定义方式,语法如下:
function name([param1, param2, ..., paramN]) { // 函数体 }示例:
function displayMessage() { alert("Hello World!"); }特点:
- 函数声明会被提升(hoisting),可以在定义之前调用
- 函数名是必需的
- 适用于需要在代码中多次使用的函数
2. 函数表达式
函数表达式是将函数作为表达式赋值给变量,语法如下:
var functionName = function([param1, param2, ..., paramN]) { // 函数体 };示例:
var multiply = function(a, b) { return a * b; };特点:
- 无提升,不能在定义前调用
- 可以是匿名函数(如上例)
- 可以是具名函数表达式(在堆栈跟踪中显示函数名)
- 常用于 IIFE(立即调用函数表达式)
3. IIFE (立即调用函数表达式)
在函数声明后立即调用的函数表达式:
(function() { // 代码 })();示例:
(function() { console.log("This function runs immediately!"); })();4. 箭头函数(ES6新增)
语法简洁,省略了function关键字,使用=>符号:
const name = (param1, param2, ...) => { // 函数体 };示例:
const multiply = (a, b) => a * b;特点:
- 无独立的
this绑定(继承自外层作用域) - 不能作为构造函数使用
- 不支持
arguments对象 - 不支持
yield语句 - 不支持命名函数表达式
5. 函数生成器声明和表达式(ES6新增)
用于创建生成器函数,可以暂停和恢复执行:
function* name([param1, param2, ..., paramN]) { // 生成器函数体 }示例:
function* counter() { let i = 0; while(true) { yield i++; } }函数定义的关键特性
函数是头等对象:在 JavaScript 中,函数是第一类对象,可以像其他对象一样具有属性和方法。
函数参数:
- 默认按值传递(基本类型)
- 对象类型参数的修改会影响外部作用域
函数返回值:
- 使用
return语句返回值 - 无
return语句的函数默认返回undefined
- 使用
作用域:
- 函数内声明的变量为局部变量
- 函数外声明的变量为全局变量
- 通过闭包机制,内部函数可以访问外部函数变量
函数提升:
- 函数声明会被提升到作用域顶部
- 函数表达式不会被提升
示例
无参数函数:
function greet() { console.log("Hello, world!"); } greet(); // 调用函数带参数函数:
function add(a, b) { return a + b; } console.log(add(3, 5)); // 输出 8箭头函数示例:
const square = x => x * x; console.log(square(4)); // 输出 16函数是 JavaScript 中的核心概念,掌握函数定义方式对于编写可重用、可维护的代码至关重要。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄
💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙