JavaScript基础学习笔记 day04
2021/10/17 22:11:47
本文主要是介绍JavaScript基础学习笔记 day04,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.数组
1.1数组的意义及创建
- 数组:一组数据的集合,将一组数据存储在单个变量
- 创建方式
//1、利用new创建数组 var arr = new Array(); //2、利用数组字面量创建数组 var arr = [];//常见用法 var arr1 = [1,2,'啦啦啦',true];//数组中的数据一定要用逗号分隔开 //3、数组里面的数据,我们称为元素,数组里的元素可以是任意类型
1.2访问数组元素
- 数组的索引(下标),用来访问数组元素的序号(从0开始)
var week = ['周一','周二','周三','周四','周五','周六','周日'] console.log(week[6]);//周日
- 扩展
week.forEach(function(item,index){ console.log(item); });
1.3遍历数组
- 把数组中的元素从头到尾都访问一遍
- 数组名[索引号]
var color = ['red', 'pink', 'blue', 'green','aqua']; console.log(color[0]);//输出red console.log(color[3]);//输出green
- 通过for循环索引遍历数组
for (var i = 0; i < color.length; i++) { //使用“数组名.length”可以访问数组元素的数量(数组长度) console.log(color[i]); }
- 注意
- 因为数组索引号从0开始,所以 i 必须从0开始
- 输出的时候 i 计数器当索引号来用
- 此处数组的长度是数组元素的个数 ,不要和数组的索引号混淆
- 当我们数组里面的元素个数发生了变化,这个** length 属性跟着一起变化**
- 案例
//求数组的和及平均值 var sum = 0; var num = [2, 6, 1, 7, 4]; for (var i = 0; i < num.length; i++) { sum = sum + num[i];//我们加的是数组元素 num[i],不是计数器 } var average = sum / num.length; console.log(`这个数组的和是${sum}`);//输出20 console.log(`这个数组的平均值是${average}`);//输出4
//求数组的最大值 var num1 = [2, 6, 1, 77, 52, 25, 7,87,5,95]; var max = num1[0]; for(var i = 1; i < num1.length; i++){ if(num1[i] > max){ max = num1[i]; } } console.log(`这个数组的最大值是${max}`);//输出95
1.4数组中新增元素
- 数组中新增元素 修改length长度
var arr = ['red', 'green', 'blue', 'pink']; console.log(arr.length); arr.length = 7;//把我们数组的长度修改为了7,里面应该有7个元素 console.log(arr); console.log(arr[4]);//没有赋值,默认是undefined
- 数组中新增元素 修改索引号
arr[4] = 'hotpink'; arr[5] = 'lightgreen'; arr[6] = 'aqua'; console.log(arr[4]); console.log(arr[5]); console.log(arr[6]);
- 注意:如果索引号被占用,原有元素会被替换;不要直接给数组名赋值,否则里面的数组元素都没有了
- 案例
//将数组中大于等于10的数字筛选出来组成新的数组 //方法一 var str1 = [2, 0, 6, 1, 77, 0, 52, 0, 25, 7]; var str2 = []; var j = 0 for(var i = 0; i < str1.length; i++){ if(str1[i] >= 10){ //新数组从0开始,依次递增 str2[j] = str1[i]; j++; } } console.log(str2);//输出数组[77,52,25] //方法二 var str1 = [2,6, 1, 77, 52, 0, 25, 7,34,6]; var str2 = []; for(var i = 0; i < str1.length; i++){ if(str1[i] >= 10){ str2[str2.length] = str1[i];//刚开始str2.length就是0,存了一个值之后,length自动变化 } } console.log(str2);//输出数组[77,52,25]
1.5数组案例
- 将数组[2, 0, 6, 1, 77, 0, 52, 0, 25, 7]中的0去掉,形成一个不包含0的新数组
var str = [2,0,6,1,77,0,52,0,25,7]; var newstr = []; for(var i = 0; i < str.length; i++){ if(str[i] != 0){ newstr[newstr.length] = str[i]; } } console.log(newstr);//输出数组[2,6,1,77,52,25,7]
- 要求: 将数组 [‘red’, ‘green’, ‘blue’, ‘pink’, ‘purple’] 的内容反过来存放
var color = ['red', 'green', 'blue', 'pink', 'purple']; var newcolor = []; for(var i = color.length - 1; i >= 0; i--){//for(var i = 0; i < color.length; i++){ newcolor[newcolor.length] = color[i]//newcolor[i] = color[color.length - i - 1]; }//} console.log(newcolor);
1.6冒泡排序
- 冒泡排序 ,是一种算法,把一系列的数据按照一定的顺序进行排列显示(从小到大或者从大到小)
var str = [5, 4, 3, 2, 1]; for (var i = 0; i < str.length - 1; i++) { //外层循环管趟数 for (var j = 0; j < str.length - i - 1; j++) { //里层循环管次数 if (str[j] > str[j + 1]) { //内部交换两个变量的值,前一个和后一个相比较 var temp = str[j]; str[j] = str[j + 1]; str[j + 1] = temp; } } } console.log(str);//输出数组[1,2,3,4,5]
2.函数
2.1函数的意义及使用
- 函数,就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现大量代码的重复使用
- 声明函数
function 函数名() { 函数体代码 }
- 注意:
- function 是声明函数的关键字,必须小写
- 由于函数一般是为了实现某个功能才定义的,所以通常我们将函数名命名为动词,比如 getSum
- 调用函数 函数名()
function sayHi(){ console.log('hi~'); } sayHi();
- 注意:
- 调用的时候千万不要忘记添加小括号
- 口诀:函数不调用,自己不执行
- 声明函数本身并不会执行代码,只有调用函数时才会执行函数体代码
- 函数案例
//计算1-100的和的值的函数 function getsum(){//声明一个函数 var sum = 0; for(var i = 1; i <= 100; i++){ sum += i; } console.log(sum); } getsum();//调用函数
2.2函数中的实参与形参
- 定义:在声明函数时,可以在函数名称后面的小括号中添加一些参数,这些参数被称为形参;在调用该函数时,同样也需要传递相应的参数,这些参数被称为实参
- 作用,在函数内部某些值不能固定,我们可以通过参数在调用函数时传递不同的值进去
// 带参数的函数声明 /* function 函数名(形参1, 形参2, 形参3等) { 形参是接受实参的,类似于一个变量 函数体 } 函数名(实参1, 实参2, 实参3等); 参数可以有也可以没有,个数不限,用逗号分开*/
- 案例
//利用函数求两个数的和 function getsum(num1, num2, num3) { console.log(num1 + num2 + num3); } getsum(4, 8,8);//12 getsum(5,23);//28
2.3补充函数相关
-
函数参数的传递过程
- 调用的时候实参值是传递给形参的
- 形参简单理解为:不用声明的变量
- 实参和形参的多个参数之间用逗号(,)分隔
-
函数形参和实参个数不匹配问题
- 实参个数与形参个数相同时,输出正确结果
- 实参个数大于形参个数时,只取到形参的个数
- 实参个数小于形参个数时,多的形参定义为undefined,结果为NaN
-
注意,在JavaScript中,形参的默认值是undefined
2.4函数的返回值return
- return语句,将函数的值返回给调用者
// 声明函数 /* function 函数名(){ return 需要返回的值; } 函数名(); 此时调用函数就可以得到函数体内return 后面的值*/
- 注意:
- 在使用 return 语句时,函数会停止执行,并返回指定的值
- 如果函数没有 return ,返回的值是 undefined
- 案例
//1、利用函数求任意两个数的最大值 function getmax(num1,num2){ return num1 > num2? num1 : num2; /* if(num1 > num2){ return num1; }else{ return num2; } */ } console.log(getmax(34,65)); console.log(getmax(76,23));
//2、利用函数求任意一个数组中的最大值 function getMax(arr){ var max = arr[0]; for(var i = 1; i < arr.length; i++){ if(arr[i] > max){ max = arr[i]; } } return max; } var arr1 = [3,5,8,12,54,32,18]; // var max1 = getMax(arr1); // console.log(max1); console.log(getMax(arr1));
- 补充:
- 使用return时,函数会停止执行,之后的语句不再执行
- return只能返回一个值,有多个值时,返回最后一个
3.一些作业中的案例
- 写一个函数,用户输入一个数判断是否是素数,并返弹出回值(又叫质数,只能被1和自身整数的数)
var num = +prompt('请输入一个正整数'); function getprime(num){ for(var i = 2; i < num; i++){ if(num % i == 0){ return '不是'; } } return '是'; } console.log(getprime(num));
- 简易计算器,用户可以选择计算方法及输入数字
var choose = prompt('欢迎使用简易计算器:' + '\n' + '1,加法计算;' + '\n' + '2,减法计算' + '\n' + '3,乘法计算' + '\n' + '4,除法计算' +'\n' + '5,退出' + '\n' + '请输入您的选项'); if (choose == 5) { alert('退出'); } else { var num1 = +prompt('请输入第一个数'); var num2 = +prompt('请输入第二个数'); alert(getresult(num1, num2)); } function getresult(num1, num2) { if (choose == 1) { return num1 + num2; } else if (choose == 2) { return num1 - num2; } else if (choose == 3) { return num1 * num2; } else if (choose == 4) { return num1 / num2; } }
这篇关于JavaScript基础学习笔记 day04的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-30我的第一个Go命令行工具
- 2024-09-30初学者指南:轻松掌握模块化编程
- 2024-09-30顶级5款免费的IntelliJ插件,助你Java开发之路更顺畅
- 2024-09-30提高应用程序可用性:冗余和持久性
- 2024-09-30Twitter 系统设计面试示例
- 2024-09-30JSON对象入门教程:轻松掌握基础用法
- 2024-09-30封装入门:Java面向对象编程的第一步
- 2024-09-30后台交互入门:轻松掌握基础知识与实践技巧
- 2024-09-30轻松入门:后台交互教程详解
- 2024-09-30后台交互项目实战:新手指南