目录
1.数组的概念
数组时指一组数据的集合,其中的每个数据被称作元素,子数组中可以存放任意类型的元素。数组是一种将数据存储在单个变量名下的优雅方式。
2.创建数组
2.1 数组创建的方式
js中创建数组有两中方式:
- 利用new 创建数组
- 利用数组字面量创建数组
2.2利用new 创建数组
var 数组名 = new Array();
var arr = new Array(); // 创建一个新的空数组
2.3 利用数组字面量创建数组
// 1. 使用数组字面量方式创建空的数组
var 数组名 = [ ];
//2.使用数组字面量方式创建带初始化值的数组
var 数组名 = ['a' , 'b', 'c'];
2.4 数据元素的类型
数组中可以存放任意类型的数据,例如字符串,数字,布尔值等。
var arr = ['a',0,true];
3.获取数组当元素
3.1数组元素的索引
索引(下标):用来访问数组元素的下标(数组下标从零开始)
数组可以通过索引来访问,设置,修改对应的数组元素。我们可以通过"数组名[索引]" 的形式来获取数组中的元素。
这里的访问就是获取得到的意思。
4.遍历数组
遍历:就是把数组中的每一个元素从头到尾都访问一次。
4.1数组的长度
使用‘数组名.length’可以访问数组元素的数量(数组长度)
5.数组中新增元素
可以通过修改length长度以及索引号增加数组元素
5.1通过修改length 长度新增数组元素
- 可以通过修改length 长度来实现数组扩容的目的
- length 属性是可读写的
5.2通过修改数组索引新增数组元素
- 可以通过修改数组索引的方式追加数组元素
- 不能直接给数组名赋值,否则就会覆盖掉以前的数据
JavaScript 函数
1.函数的概念
在js 里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用。
虽然for 循环语句也可能实现一些简单的重复操作,但是比较具有具有局限性,此时我们就可以使用js 中的函数。
2.函数的使用
函数在使用时分为两步:声明函数和调用函数。
2.1声明函数
//声明函数
function 函数名() {
//函数体代码
}
- function 是声明函数的关键字,必须小写
- 由于函数一般是为了实现某个功能才定义的,所以通常我们将函数名命名为动词 比如 getSum
2.2调用函数
//调用函数
函数名(); //通过调用函数名来执行函数体代码
- 调用的时候千万不要忘记添加小括号
- 口诀:函数不调用,自己不执行
注意:声明函数本身不会执行代码,只要调用函数时才会执行函数体代码
2.3函数的封装
- 函数的封装是把一个或者多个功能通过函数的方式封装起来,对外只提供一个简单的接口
- 简单理解 : 封装类似将电脑配件整合组装到机箱中(类似快递打包)
3.函数的参数
3.1形参和实参
在声明函数时,可以在函数名称后面的小括号中添加一些参数,这些参数被称为形参,而在调用该函数时,同样也需要传递相应的参数,这些参数被称为实参。
参数 | 说明 |
形参 | 形式上的参数 函数定义的时候 传递的参数 当前并不知道是什么 |
实参 | 实际上的参数 函数调用的时候传递的参数 实参是传递个形参的 |
参数的作用: 在函数内部某些值不能固定,我们可以通过参数在函数调用函数时传递不同的值进去。
3.3函数形参和实参个数不匹配问题
参数个数 | 说明 |
实参个数等于形参个数 | 输出正确结果 |
实参个数多于形参个数 | 只取到形参的个数 |
实参个数小于形参个数 | 多的形参定义undefined,结果为NaN |
注意:在JavaScript中,形参的默认值是undefined。
3.4小结
- 函数可以带参数也可以不带参数
- 声明函数的时候,函数名括号里面的是形参,形参的默认值为undefined
- 调用函数的时候,函数名括号里面的是实参
- 多个参数中间用逗号分隔
- 形参的个数可以和实参个数不匹配,但是结果不可预计,我们尽量要匹配。
4.函数的返回值
4.1 return 语句
有的时候,我们希望函数将值返回给调用者,此时通过使用return 语句就可以实现。
1.函数是做某件事或者实现某种功能
2. 函数的返回值格式
function 函数名() {
return 需要返回的结果;
}
函数名();
(1) 我们函数只是实现某种功能,最终的结果需要返回给函数的调用者函数名() 通过return 实现的
(2) 只要函数遇到return 就把后面的结果 返回给函数的调用者 函数名() = return后面的结果
4.2 return 终止函数
return 语句之后的带啊吗不被执行。
4.3 return 的返回值
return只能返回一个值。如果用逗号隔开多个值,以最终一个为准。
4.4 函数没有return 返回 undefined
函数都是有返回值的
- 如果有 return 则返回 return 后面的值
- 如果没有 return 则返回 undefined
4.5 break,continue,return 的区别
- break: 结束当前的循环体(如 for while)
- continue: 跳出本次循环,继续执行下次循环(如 for while)
- return: 不仅可以退出循环,还能够返回 return 语句中的值,同时还可以结束当前的函数体内的代码
5.arguments 的使用
当我们不确定有多少个参数传递的时候,可以用arguments来获取。在JavaScript中,arguments实际上它是当前函数的一个内置对象。所有函数都内置了一个arguments 对象中存储了传递的所有实参。
arguments 展示形式是一个伪数组,因此可以进行遍历。伪数组具有以下特点:
- 具有length 属性
- 按索引方式存储数据
- 不具有数组的push pop 等方法
6. 函数的两种声明方式
1.利用函数关键字 function 自定义函数方式。
// 声明定义方式
function fn() {...} // 调用
fn();
- 因为有名字,所以也被称为命名函数
- 调用函数的代码既可以放到声明函数的前面,也可以放在声明函数的后面
2. 函数表达式方式(匿名函数)
// 这是函数表达式写法,匿名函数后面跟分号结束
var fn = function(){...}; // 调用的方式,函数调用必须写到函数体下面
fn();
利用函数表达式方式的写法如下:
- 因为函数没有名字,所以也被称为匿名函数
- 这个fn 里面存储的是一个函数
- 函数表达式方式原理跟声明变量方式是一致的
- 函数调用的代码必须写到函数体后面