JavaScript 函数基础

78 阅读4分钟

函数 function 函数 function: 一个代码块,可以封装

函数最大的好处是将重复的代码封装起来,多次调用只需调用函数即可

调用函数 语法:函数名()

参数 函数是有参数和返回值的

函数是有参数和返回值的

参数 : 由调用者传入的数据

返回值 : 函数执行完毕后,将结果返回

总结: 函数如果没有 参数和返回值 ,那只是一个容器,非常的不灵活

语法 :  
function 函数名(参数1,参数2,参数3……)
 进行函数内部的操作
 return 结果
}

在Javascript中 实参的个数和形参的个数可以不一致
     -如果形参过多 会自动填上undefined
     - 如果实参过多 那么多余的实参会被忽

​ java c# 这些语言严格要求实参和形参的数量一致, 而JavaScript 是一门极其灵活的语言,没有这个要求, 但是我们在使用时应尽量保证严格(实际上相当于js语言的一个bug) ​ 在Javascript中 实参的个数和形参的个数可以不一致 -如果形参过多 会自动填上undefined

如果实参过多 那么多余的实参会被忽java c# 这些语言严格要求实参和形参的数量一致,而JavaScript 是一门极其灵活的语言,没有这个要求,但是我们在使用时应尽量保证严格(实际上相当于js语言的一个bug)

逻辑中断 && 一假为假 ​ || 一真为真

false && anything // 逻辑与左边false则中断,如果左边为true, 则返回右边代码的值 true || anything // 逻辑或左边true则中断,如果左边为false, 则返回右边代码的值

// 逻辑中断
// 与逻辑运算符的区别:
// 1. 逻辑中断可以连接不同数据类型的数据
// 2. 逻辑运算符一般用于两个条件的连接, 左右两边都得是布尔值
// && 短路与

函数的返回值 return 注意事项

1.会结束整个函数的执行

2.后面不要换行(return 后面一定要跟返回的数据,不要让它单独在一行)

3.return 有默认的返回值

作用域

作用域:变量作用的范围,这个变量在哪里开始使用,在哪里不可以使用

作用 : 提高程序逻辑的局部性,避免出现大量的命名冲突

JS中 分为全局作用域和局部作用域

数组总结 // 数组大总结

// 数组是什么? What

// 多个数据的容器, 一种引用数据类型

// 为什么要用数组? Why

// 变量也是容器, 但是一个变量只能存储一个数据, 如果需要存储多个数据, 就得用数组

// 数组怎么用? How

// 1. 定义

// [] 就是数组

// 特点:

// 1.1 数组是有序的

// 1.2 序号称之为索引/下标/角标, 从 0 开始

// 1.3 可以存储任意数据类型的数据

let arr = [12, true, 56, '牛逼']

// 2. 查询 (访问数据, 获取数据)

// 可以通过索引来访问数据

// 语法: 数组[索引]

arr[3]

let num = 2

arr[num] // 56

// 遍历: 将数组中每个元素都访问一次

// 如何实现遍历?

// for 循环

// 为什么要用 for 循环才能实现遍历?

// 因为数组是有序的, for 循环可以让循环变量从 0 开始, 逐步递增到数组的最后一个索引位置

for (let i = 0; i < arr.length; i++) {

// 访问每一个元素

arr[i]

}

// 3. 修改

// 通过索引找到元素, 直接修改

// 注意: 不要超出数组长度, 容易出现空位, 遍历时会出现大量的 undefined

arr[2] = '你好'

// 4. 添加

// 从末尾追加元素

// 可以传入多个元素

// 返回新数组的长度

arr.push()

// 从前面插入元素

arr.unshift()

// 5. 删除

// 从末尾删除一个元素

// 不能传入任何参数, 返回被删除的那个元素

arr.pop()

// 从前面删除一个元素

arr.shift()

// splice() 碾接

// 作用1: 仅用于删除

// 作用2: 删除后添加

// 作用3: 不删除, 只插入

// 可以传入三个参数:

// 参数1: 开始的索引

// 参数2: 要删除的元素个数

// 参数3: 要添加的元素