JS学习【三】(流程控制语句,数组,函数)
文章目录
- 1.流程控制语句
- 1.1 switch 的注意事项
- 1.2 循环的断点
- 2. JavaScript数组
- 2.1 数组的创建
- 2.1.1 用new 的方式创建数组
- 2.1.2 利用字面量的方法创建数组
- 2.2 数组元素的新增
- 3. 函数
- 3.1 函数形参与实参个数不匹配
- 3.2 函数 return 后面没有值
- 3.3 arguments的使用
- 3.4 函数的两种声明方式
- 3.4.1 命名函数
- 3.4.2 函数表达式(匿名函数)
1.流程控制语句
1.1 switch 的注意事项
- 所判断的值必须要和case后面的值全等(===)才算匹配
switch (i) {case 1:console.log('number 1');break;case '2':console.log('String 2');}// i = 1 => number 1// i = '1' => ''// i = 2 => ''// i = '2' => String 2
1.2 循环的断点
- 在浏览器中选择source
- 左键单击行号
- 刷新网页
2. JavaScript数组
2.1 数组的创建
2.1.1 用new 的方式创建数组
var arr = new Array();
2.1.2 利用字面量的方法创建数组
- 数组中可以存放任意类型的变量
var arr = ['a', 2, true, 2.8]
2.2 数组元素的新增
- 可以通过修改数组索引的方式追加数组
- 对比于C Java固定长度的数组,这数组更像Java的Array类,长度随意增加
var arr = [1, 2, 3, 4];arr[4] = 5;arr[6] = 7;console.log(arr); // => [1, 2, 3, 4, 5, empty, 7]
3. 函数
3.1 函数形参与实参个数不匹配
- 实参个数等于形参个数,输出正常
- 实参个数多余形参个数,只取前面的值
- 实参个数小于形参个数,多的形参定义为undefined(如下中的y),输出结果是实参 + undefined
function getSum(x, y) {console.log(x + y);}getSum(1,3); // => 4getSum(1, 2, 3); // => 3getSum(1);// => NaN
3.2 函数 return 后面没有值
- 返回undefined
function f() {return}console.log(f()); // => undefined
3.3 arguments的使用
- 不确定有多少个参数传递的时候,不设置形参也可以,用arguments对象来获取。在JavaScript中,arguments实际上它是当前函数的一个内置对象。所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有实参。
- arguments是个伪数组,有length属性,按照索引的方式存储数据,但没有数组的方法 ,如push等
function getSum() {console.log(arguments);var sum = 0;for(var i = 0; i < arguments.length; i++){sum += arguments[i];}console.log(sum);}getSum(1, 2, 3, 4);// => [1, 2, 3, 4]// => 10
3.4 函数的两种声明方式
3.4.1 命名函数
- 就是我们最常用的声明方式
function f(){ }
f();
3.4.2 函数表达式(匿名函数)
var f = function(aru){console.log(aru);
}f('a'); // => a
- f是变量名,不是函数名
- 函数表达式的声明方式和变量的声明方式差不多,区别在于声明变量中存值,声明函数表达式中存函数
JS学习【三】(流程控制语句,数组,函数)
文章目录
- 1.流程控制语句
- 1.1 switch 的注意事项
- 1.2 循环的断点
- 2. JavaScript数组
- 2.1 数组的创建
- 2.1.1 用new 的方式创建数组
- 2.1.2 利用字面量的方法创建数组
- 2.2 数组元素的新增
- 3. 函数
- 3.1 函数形参与实参个数不匹配
- 3.2 函数 return 后面没有值
- 3.3 arguments的使用
- 3.4 函数的两种声明方式
- 3.4.1 命名函数
- 3.4.2 函数表达式(匿名函数)
1.流程控制语句
1.1 switch 的注意事项
- 所判断的值必须要和case后面的值全等(===)才算匹配
switch (i) {case 1:console.log('number 1');break;case '2':console.log('String 2');}// i = 1 => number 1// i = '1' => ''// i = 2 => ''// i = '2' => String 2
1.2 循环的断点
- 在浏览器中选择source
- 左键单击行号
- 刷新网页
2. JavaScript数组
2.1 数组的创建
2.1.1 用new 的方式创建数组
var arr = new Array();
2.1.2 利用字面量的方法创建数组
- 数组中可以存放任意类型的变量
var arr = ['a', 2, true, 2.8]
2.2 数组元素的新增
- 可以通过修改数组索引的方式追加数组
- 对比于C Java固定长度的数组,这数组更像Java的Array类,长度随意增加
var arr = [1, 2, 3, 4];arr[4] = 5;arr[6] = 7;console.log(arr); // => [1, 2, 3, 4, 5, empty, 7]
3. 函数
3.1 函数形参与实参个数不匹配
- 实参个数等于形参个数,输出正常
- 实参个数多余形参个数,只取前面的值
- 实参个数小于形参个数,多的形参定义为undefined(如下中的y),输出结果是实参 + undefined
function getSum(x, y) {console.log(x + y);}getSum(1,3); // => 4getSum(1, 2, 3); // => 3getSum(1);// => NaN
3.2 函数 return 后面没有值
- 返回undefined
function f() {return}console.log(f()); // => undefined
3.3 arguments的使用
- 不确定有多少个参数传递的时候,不设置形参也可以,用arguments对象来获取。在JavaScript中,arguments实际上它是当前函数的一个内置对象。所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有实参。
- arguments是个伪数组,有length属性,按照索引的方式存储数据,但没有数组的方法 ,如push等
function getSum() {console.log(arguments);var sum = 0;for(var i = 0; i < arguments.length; i++){sum += arguments[i];}console.log(sum);}getSum(1, 2, 3, 4);// => [1, 2, 3, 4]// => 10
3.4 函数的两种声明方式
3.4.1 命名函数
- 就是我们最常用的声明方式
function f(){ }
f();
3.4.2 函数表达式(匿名函数)
var f = function(aru){console.log(aru);
}f('a'); // => a
- f是变量名,不是函数名
- 函数表达式的声明方式和变量的声明方式差不多,区别在于声明变量中存值,声明函数表达式中存函数