JavaScript基础 第四弹 学习笔记

函数

1、为什么需要函数?可以实现代码复用,提高开发效率。

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

函数可以把具有相同或相似逻辑的代码‘包裹’起来,通过函数调用执行这些被“包裹”的代码逻辑,这样做有利于精简代码方便复用。

2.函数的使用

        ①声明函数: function 函数名(){      };

        ②函数的命名要求:

①和变量名基本一致②尽量使用驼峰命名法(类似于userName)③前缀应该为动词④命名建议常用动词约定。常见的动词及含义如下;

常见动词约定
动词含义
can判断是否可执行某个动作
has判断是否含有某个值
is判断是否为某个值
get获取某个值
set设置某个值
load加载某些数据

        ③函数的调用方法

        函数名(),调用了函数,函数体写的逻辑代码都会被执行,值得被注意的是函数必须先声明在调用才能被正常执行,一次声明可以多次调用。

      3.函数传参

        函数不传参使用,局限性大,如果函数完成功能需要调用者传入数据,南无就需要带有参数的函数。这样也极大的提高了函数的灵活性。

        传参函数,声明 function 函数名(参数1,参数2,....)

        调用方法:

 

        

        4.函数返回值

        当调用某个函数后,该函数返回的结果就是返回值。当函数需要返回数据出去时。使用return关键字。

        函数细节:

        5.作用域

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

        作用域的使用提高了程序逻辑的局部性,新增了程序的可靠性,减少了名字冲突。全局作用域:全局有效;局部作用域:局部有效;、

        变量有特殊情况:如果函数内部,变量没有声明,直接赋值,也当全局变量看,但是强烈不推荐,但是有一种情况,函数内部的形参可以看做是局部变量。(不提倡)
        变量访问原则:采用就近原则的方式来查找变量最终的值

       ①只要是代码,就至少有一个作用域

       ② 写在函数内部的局部作用域

       ③如果函数中还有函数,那么在这个作用域中就又可以诞生一个作用域

       ④访问原则:在能够访问到的情况下先布局,布局没有在找全局。

6.匿名函数

        没有名字的函数,无法直接使用。

        使用方式:函数表达式,立即执行函数

        ①函数表达式

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

        let fn = function () {

        //函数体

        }

        fn()//函数名()

        ②立即执行函数

        避免全局变量之间的污染

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

        立即执行函数的作用:防止变量污染

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3248655.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

万界星空科技电线电缆MES系统实现线缆全流程追溯

MES系统通过高度集成的数据平台,对电线电缆的生产全过程进行实时监控与记录,从原材料入库开始,到生产过程中的各个关键控制点,再到成品出库,每一步操作都被详细记录并可追溯。这种全流程追溯能力主要体现在以下几个方面…

java基础之变量,类型的转换,跟着哔站尚硅谷自学笔记。

变量 变量的介绍以及使用 1.变量的数据类型:基本数据类型:4类8种整数:byte short int long 浮点数:float double字符型:char布尔型:boolean引用数据类型:类 数组 接口 枚举 注解2.概述&#xf…

云南合续-马来西亚水环境项目考察单位

2024年恰逢中马建交50周年,中华环保联合会为进一步加强双方生态产业合作与交流,拟定于9月23日-29日组团赴马来西亚开展水环境项目考察,同期举办“2024中马水务合作论坛”,引领国内先进环保技术、装备、产能“走出去”。

hung 之 Android llkd

目录 1. llkd 简介 2. 原理 2.1 内核活锁 2.2 检测机制 2.3 为什么 persistent stack signature 检测机制不执行 ABA 检查? 2.4 为什么 kill 进程后,进程还存在就能判定发生了内核 live-lock? 3. 代码 3.1 内核 live-lock 检查 3.2 …

verilog刷题笔记

1、选择器实现方式 (1)case语句,注意default (2)if-else语言,注意else,有优先级 (3)三元运算符 ? : 2、阻塞赋值/非阻塞赋值都是过程性赋值&a…

使用崖山YMP 迁移 Oracle/MySQL 至YashanDB 23.2 验证测试

前言 首届YashanDB「迁移体验官」开放后,陆续收到「体验官」们的投稿,小崖在此把优秀的投稿文章分享给大家~今天分享的用户文章是《使用崖山YMP 迁移 Oracle/MySQL 至YashanDB 23.2 验证测试》(作者:尚雷)&#xff0c…

提交(git-add git-commit git-push)

当修改好一个功能的时候,可以提交到远程仓库,这样就等于更新了一次版本,那么下次改修了文件的话,是跟这个版本做对比的 git status, 查看文件修改情况,git add 假如你只想提交1个文件,那么直接…

硬件开发——SD/MMC/eMMC

硬件开发——SD/MMC/eMMC 小狼http://blog.csdn.net/xiaolangyangyang 1、引脚定义 2、时钟频率 eMMC的速度模式有: SDR50:26M/52MHS200:200MHS400:400M 详细信息见如下表格: 3、协议 Read Data Write Data No Data …

beego框架_golang web框架_使用介绍

beego简介 beego是一个用于快速开发Go应用的http框架,由Go语言方面的技术大牛设计。beego可以用来快速开发API、Web、后端服务等各种应用,是一个RESTful的框架,主要设计灵感来源于tornado、sinatra、flask这三个框架,但结合了Go本…

Linux 安装多个jdk,切换使用

一、下载jdk 先去oracle官网下载jdk安装文件(我需要下载旧版本的jdk) https://www.oracle.com/ 二、安装jdk 1、将下载的jdk安装文件解压到想要安装的目录下 tar -xzvf jdk-8u202-linux-x64.tar.gz2、修改环境变量 vim /etc/profile export JAVA_HOME/usr/java/jdk1.…

Java代码批量处理sql语句

背景:数据源迁移,目标数据源和原始数据源的语法不同,要把建表语句全都改成新的语法。 一个个sql文件去替换实在是麻烦,可以把原始的sql文件放在一个文件夹,然后用程序一跑,改完语法的sql语句就放在新的文件…

基于Llama Index构建RAG应用

前言 Hello,大家好,我是GISer Liu😁,一名热爱AI技术的GIS开发者,本文参与活动是2024 DataWhale AI夏令营;😲 在本文中作者将通过: Gradio、Streamlit和LlamaIndex介绍 LlamaIndex 构…

只用 CSS 能玩出什么花样?

在前端开发领域,CSS 不仅仅是一种样式语言,它更像是一位多才多艺的艺术家,能够创造出令人惊叹的视觉效果。本文将带你探索 CSS 的无限可能,从基本形状到动态动画,从几何艺术到仿生设计,只用 CSS 就能玩出令…

MySQL的索引、事务

MySQL的索引 索引的概念 索引是一个排序的列表,在列表当中存储索引的值以及索引值对应数据所在的物理行。 索引值和数据是一一映射的关系。 索引的作用 使用索引之后就不需要扫描全表来定位某行的数据 加快数据库查询的速度。 索引可以是表中的一列也可以是多…

WsgiDAV:强大的 WebDAV 解决方案

一、软件介绍 WsgiDAV 是一款卓越的开源 WebDAV 服务器和客户端库,由 Python 精心编写而成。它为用户搭建了一座通过 HTTP/HTTPS 协议访问和管理远程文件系统的便捷桥梁。 WsgiDAV 的核心是一个严格遵循 WebDAV 标准的中间件,能够与任何 WSGI 兼容的 W…

Python语法大全

#前言: 关于此篇博客主要是关于对Python语法的总结,有过C语言学习经历的人看的会更加通俗易懂!(当然没学过C的理解起来也是很容易)知识点言简意赅,内容全面,多有代码解释!且有多处实…

【数据结构】--- 栈和队列

前言 前面学习了数据结构的顺序表、单链表、双向循环链表这些结构;现在就来学习栈和队列,这里可以简单的说栈和队列是具有特殊化的线性表 一、栈 1.1、栈的概念和结构 栈是一种遵循先入后出逻辑的线性数据结构。 栈是一种特殊的线性表,它只允…

表格竖向展示

最近在做手机端web页面,页面中需要有个表格来显示数据,但是由于数据太多页面太窄,table展示横向滑动的话感觉很丑。所以让表格竖向显示了 具体页面如下: 实现代码:当然代码里面绑定的数据啊什么的你都可以修改为自己的内容&#…

PyTorch高级特性与性能优化

PyTorch高级特性与性能优化 引言: 在深度学习项目中,使用正确的工具和优化策略对于实现高效和有效的模型训练至关重要。PyTorch,作为一个流行的深度学习框架,提供了一系列的高级特性和性能优化方法,以帮助开发者充分利…

TDC 5.0:多集群统一纳管,构建一体化大数据云平台

近期,星环科技数据云平台Transwarp Data Cloud(简称TDC)5.0版本正式发布,TDC5.0架构屏蔽底层多个TDH集群的差异,采用统一操作模式,新增一个多集群抽象与管理层,能够实现多集群网络互通、跨集群资…