IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 重生之再学JavaScript-函数 -> 正文阅读

[JavaScript知识库]重生之再学JavaScript-函数

函数

函数的作用:代码复用

函数:function,是被设计为执行特定任务的代码块

函数可以把具有相同或相似逻辑的代码“包裹”起来,通过函数调用执行这些被“包裹”的代码逻辑,这么做的优势

是有利于精简代码方便复用。

函数可以实现代码复用提高开发率

函数的使用

函数的声明语法

例如:

函数名命名规范

和变量命名基本一致

尽量小驼峰式命名法

前缀应该为动词

命名建议:常用动词约定

?

?

函数的调用语法:

?

?注意:声明的函数必须调用才会真正被执行,使用()调用函数

例如:

我们使用过的alert(),parselnt()这种名字后面跟小括号的本质都是函数的调用

函数体:

函数体是函数的构成部分,它负责将相同或相似代码“包裹”起来,直到函数调用时函数体内的代码才

会被执行。函数的功能代码都要写在函数体当中。

?

函数传参

?

传参的好处:

若函数完成功能需要调用者传入数据,那么就需要用有参数的函数

这样可以极大提高函数的灵活性

?声明语法:

参数列表:

? 传入数据列表

? 声明这个函数需要传入几个数据

? 多个数据用逗号隔开

?单个参数:

多个参数:

?

传参和调用:

调用语法:

?

?例如:

?

调用函数时,需要传入几个数据就写几个,用逗号隔开

?形参与实参:

形参:声明函数时写在函数名右边小括号里的叫形参(形式上的参数)

实参:调用函数时写在函数名右边小括号里的叫实参(实际上的参数)

形参可以理解为是在这个函数内声明的变量(比如 num1 = 10)实参可以理解为是给这个变量赋值

开发中尽量保持形参和实参个数一致

我们曾经使用过的 alert('打印'), parseInt('11'), Number('11') 本质上都是函数调用的传参

?

函数返回值

有返回值函数的概念:

当调用某个函数,这个函数会返回一个结果出来

这就是有返回值的函数

用return返回数据

语法:

例如:

?

细节:

在函数体中使用 return 关键字能将内部的执行结果交给函数外部使用

函数内部只能出现 1 次 return,并且 return 后面代码不会再被执行,所以 return 后面的数据不要换行写

return会立即结束当前函数

函数可以没有 return,这种情况函数默认返回值为 undefined

作用域

作用域概述

通常来说,一段程序代码中所用到的名字并不总是有效和可用的,而限定这个名字的可用性的代码范围就是这

个名字的作用域。作用域的使用提高了程序逻辑的局部性,增强了程序的可靠性,减少了名字冲突

全局作用域(全局有效):作用于所有代码执行的 环境(整个 script 标签 内部)或者一个独立的 js 文件

局部作用域(局部有效 ) :作用于函数内的代码环境,就是局部作用域因为跟函数有关系,所 以也称为函数作用域。

块级作用域({}内有效):块作用域由 { } 包括,if语 句和for语句里面的{ }等

变量的作用域

变量有一个坑, 特殊情况:

如果函数内部或者块级作用域内部,变量没有声明,直接赋值,也当全局变量看,但是强烈不推荐

但是有一种情况,函数内部的形参可以看做是局部变量。

匿名函数

函数可以分为:

1.具名函数:声明:function fn() {}

调用:fn()

2.匿名函数:function() {}

匿名函数

将匿名函数赋值给一个变量,并且通过变量名称进行调用 我们将这个称为函数表达式

语法:

立即执行函数

?

场景介绍: 避免全局变量之间的污染

语法:

注意:多个立即执行函数使用;隔开,要不然会报错 ?

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-10 10:58:30  更:2021-12-10 11:00:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:47:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码