924 字
5 分钟
Loading
JavaScript Day4

函数:

开发中使用函数是为了方便.

函数:把公共部分抽取封装,可以随时使用。

声明:

Function xxx()

{

xxx

}

调用:

Xxx()

重复调用:

For(…)

函数:执行特定任务的代码块,可以包含相似或相同逻辑的代码。

Alert,prompt等就是函数

函数格式:

Function 函数名()

{

函数体

}

函数命名规范:尽量小驼峰,前缀应该为动词

常用动词含义:

can 判断是否可执行某个动作

has 判断是否含义某个值

is 判断是否为某个值

get 获取某个值

set 设置某个值

load 加载某些数据

含参函数:

Function 函数名(参数列表)

{

函数名

}

函数传参的时候,如果传过去的是数值,接受的是变量,则默认进行了一次赋值运算。

多个参数传递,则按照排列顺序一一对应。

调用函数的时候传递过去的参数被成为实参,即实际上的参数

函数名中的参数为形参,即形式上的参数。

也可以设置默认参数:

Function 函数名(x=1,y=1)

{

xxx }

如果有参数传递,则不会执行x=1和y=1的行为,这样会保证程序更加严谨。

传递数组为参数:

Getsum([1,2,3,4,5])

Function getsum(arr)

其中arr为一个数组。

但是如果形参为数组的话,实参不传递,则会传递空数组。

函数的返回值:

把函数的处理结果返回给调用者,使用关键字:return

Return会直接结束函数,不会执行后面的语句。函数如果不写return,则默认返回undefined

封装:把代码块放进函数中独立存在。

Return可以返回多个数据,把它存放在数组中:

Return [max,min]

也可以返回表达式:

Return x+y

实参多于形参:多出来的不参与运算

实参少于形参:另一个数据为undefined,运算结果一般是nan

函数的作用域:

一个变量可用的范围就是变量的作用域,函数可用的范围就是函数的作用域。

全局作用域:在整个script标签或独立js文件都可以使用

局部作用域:例如for

For(let I = 0 ;… ;…){

}

这里的i就是局部作用域,在函数内声明的变量也是局部作用域。

函数内部变量如果没有声明会直接当作全局变量使用,但不推荐这么写,容易出错。形参可以看作是局部变量。

就近原则:

如果函数内部存在一个和函数外部相同名字的变量,则会优先认为函数内部的变量。

匿名函数:

函数分为两种:具名函数,匿名函数

Function() {}

匿名函数无法直接使用,使用方法为:

Let fn = function(){}

这样就可以让fn作为函数的名字来使用。使用方法:

Fn()

具名函数的调用可以写在任何位置,但匿名函数必须先规定再使用。

另一种方法:立即执行函数,写法:

(Function(){})()

先写两个小括号:

()()

再给第一个小括号里写标准函数的格式:

(function(){})()

实例:

(function(x,y)

{

Console.log(x+y)

})(这个小括号内是实参);

立即执行函数必须用分号隔开。

封装时间函数:

特殊写法解释:

Function fun(x,y)

{

X=x||0

Y=y||0

Console.log(x+y)

}

这种写法的意思是如果不知道传什么就使用0,用到了逻辑运算符的逻辑中断,&&左为false就短路,||也一样.

布尔类型转换:

空字符串,0,undefined,null,false,NaN都是false,其余都为true

逻辑或取第一个值为真则为全真,这一点需要单独注意.

JavaScript Day4
https://vilstia.pages.dev/posts/学习笔记/javascript/javascript-day4/
作者
琴泠
发布于
2024-02-01
许可协议
CC BY-NC-SA 4.0