标签:function 形参 不同 console 是什么 算法 数据存储 固定 输入
本章的总体思路,围绕着数组展开。
一共有两种方式。new一个,还有一种是字面量的方式。
var 数组名 = new Array() ;
var arr = new Array(); // 创建一个新的空数组
字面量的方式
//1. 使用数组字面量方式创建空的数组
var 数组名 = [];
//2. 使用数组字面量方式创建带初始值的数组
var 数组名 = ['大明','小陈','小张','老李'];
//3.在数据中可以放任意类型
var 数组名 = [0,true,'小张',13213];
这种字面量方式也是我们以后最多使用的方式,也是在开发中常用的
### 二。如何访问数组中的元素?
### 1.使用索引(下标)进行访问。
// 定义数组
var arrStus = [1,2,3];
// 获取数组中的第2个元素
alert(arrStus[1]); //这里获取的是值是 2
alert(arrStus[6]); //访问时数组没有和索引值对应的元素,则得到的值是undefined
var arr = ['red','green', 'blue'];
for(var i = 0; i < arr.length; i++){
console.log(arrStus[i]);
}
数组的length属性可以被修改:
- 如果设置的length属性值大于数组的元素个数,则会在数组末尾出现空白元素;>就增加
- 如果设置的length属性值小于数组的元素个数,则会把超过该值的数组元素删除,<就删除
我们通过一个简单的实例代码,很容易的就可以明白了。
数组[ 数组.length ] = 新数据;
var arr = [1,2,3,4,5]
alert(arr.length) //这里是5个元素,所以长度是5.索引的最大值是4
arr[arr.length] = 6;
alert(arr.length) //这里的长度就编程6了。
在 JS 里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用。虽然 for循环语句也能实现一些简单的重复操作,但是比较具有局限性,此时我们就可以使用 JS 中的函数。
? 函数:就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现大量代码的重复使用。
// 1. 声明函数
function 函数名() {
//函数代码
}
// 2. 调用函数
函数名();
// 比如,我想实现一个累加的算法从用0一直加到100,
function getSum(){
var sumNum = 0;// 准备一个变量,保存数字和
for (var i = 1; i <= 100; i++) {
sumNum += i;// 把每个数值 都累加 到变量中
}
alert(sumNum);
}
// 调用函数
getSum();
参数的作用 : 在函数内部某些值不能固定,我们可以通过参数在调用函数时传递不同的值进去。
函数参数的运用:
// 带参数的函数声明
function 函数名(形参1, 形参2 , 形参3...) { // 可以定义任意多的参数,用逗号分隔
// 函数体
}
// 带参数的函数调用
函数名(实参1, 实参2, 实参3...);
//实际的例子。实现一个算法,从用户输入值,获取两个值,对两个值先进行求和,再跟4取余;
alert("请输入第一个值");
var a = prompt();
alert("请输入第二个值");
var b = prompt();
var re;
var sum;
function remainder(num1,num2) {
sum = num1 + num2;
alert("求和的运算结果是:" + sum);
re = sum % 4;
alert("取余的运算结果是:" + re)
}
remainder(a,b);
// return一下就可以了
// 声明函数
function 函数名(){
...
return 需要返回的值;
}
// 调用函数
函数名(); // 此时调用函数就可以得到函数体内return 后面的值
//比如下面描述的以一个例子。
// 利用函数求数组 [5,2,99,101,67,77] 中的最大数值。这里你需要首先了解一下算法的概念
//所谓的算法就是解决某个问题的一种方法。
function getArrMax(arr) { // arr 接受一个数组 arr = [5,2,99,101,67,77]
var max = arr[0];
for (var i = 1; i <= arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
// getArrMax([5, 2, 99, 101, 67, 77]); // 实参是一个数组送过去
// 在我们实际开发里面,我们经常用一个变量来接受 函数的返回结果 使用更简单
// var re = getArrMax([5, 2, 99, 101, 67, 77]);
var re = getArrMax([3, 77, 44, 99, 143]);
console.log(re);
? 当不确定有多少个参数传递的时候,可以用 arguments 来获取。JavaScript 中,arguments实际上它是当前函数的一个内置对象。所有函数都内置了一个 arguments 对象,arguments 对象中存储了传递的所有实参。arguments展示形式是一个伪数组,因此可以进行遍历。伪数组具有以下特点:
具有 length 属性
按索引方式储存数据
不具有数组的 push , pop 等方法
注意:在函数内部使用该对象,用此对象获取函数调用时传的实参。
函数内部可以调用另一个函数,在同一作用域代码中,函数名即代表封装的操作,使用函数名加括号即可以将封装的操作执行。
自定义函数方式(命名函数)
利用函数关键字 function 自定义函数方式
// 声明定义方式
function fn() {...}
// 调用
fn();
函数表达式方式(匿名函数)
利用函数表达式方式的写法如下:
// 这是函数表达式写法,匿名函数后面跟分号结束
var fn = function(){...};
// 调用的方式,函数调用必须写到函数体下面
fn();
这是可以的。比如下面的实例代码
(function() {
console.log("这是函数的自调用");
}
)();//这个函数就是函数自调用
//解释:
var f1 = function(){
? console.log("你好!");
};
console.log(f1);
f1();
//解释:f1里面存储的就是函数代码,通过f1加()的方式调用,没有f1变量的时候,直接在代码后面加上()就可以调用,叫函数的自调用
所谓的回调函数,就是函数作为参数进行调用。值得说明的是,这种回调,在实际工作中使用非常广泛和频繁。
//函数声明,fn是变量,fn也是参数
function f1(fn){
? fn();//函数调用----说明fn这个变量中存储的是一个函数
}
function f2(){
? console.log("函数可以作为参数使用");
}
f1(f2);//调用f1,将f2作为参数传进去
//结果:函数可以作为参数使用
标签:function 形参 不同 console 是什么 算法 数据存储 固定 输入
原文地址:https://www.cnblogs.com/BM-laoli/p/12394109.html