前端全栈学习第十二天-js第三天-基础
1:数组 ---冒泡排序
2:函数
1:数组
1):数组的作用,可以一次存储多个数据
2)创建数组有两种方式
通过构造函数创建一个数组
var arr = new Array(5)//数组长度为5,空数组
Var arr1 = new Array(5,1)//数组长度为2,里面有5,1两个元素
通过字面量创建一个数组
Var arr =[5]//数组长度为1,元素为5
3)for循环遍历数组
var arr3 = [45, 12, 56, 23, 1, 48]
for (var i =0; i < arr3.length; i++) {console.log(arr3[i])
}
数组案例
// 案例1:求数组中所有元素的和
// 案例2:求数组中所有元素的平均值
// 案例3:求数组中所有元素的最大值
// 案例4:求数组中所有元素的最小值
// 案例5:倒循环遍历数组
// 案例6:把数组中的每一个元素用|拼接到一起产生一个字符串,并输出
// 案例7:去掉数组中重复的0,把其他的数据放在新的数组中
// 案例8:反转数组
// 案例9:冒泡排序
// 案例10:将1-4案例写成一个方法
// 案例1:求数组中所有元素的和var arr = [1, 9, 2, 8];var sum = 0;for (var i = 0; i < arr.length; i++) {sum += arr[i]}console.log(sum);// 案例2:求数组中所有元素的平均值var arr = [1, 9, 2, 8];var sum = 0;for (var i = 0; i < arr.length; i++) {sum += arr[i];}console.log(sum / arr.length);// 案例3:求数组中所有元素的最大值,写的时候,涉及到返回值var arr = [1, 9, 2, 8];var max = Number.MIN_VALUE;for (var i = 0; i < arr.length; i++) {if (max < arr[i]) {max = arr[i];}}console.log(max);// 案例4:求数组中所有元素的最小值var arr = [1, 9, 2, 8];var min = Number.MAX_VALUE;var min = arr[0];for (var i = 0; i < arr.length; i++) {if (min > arr[i]) {min = arr[i];}}console.log(min);// 案例5:倒循环遍历数组var arr = [1, 2, 3, 4, 5];for (var i = arr.length; i >= 0; i--) {console.log(arr[i]);}// 案例6:把数组中的每一个元素用,拼接到一起产生一个字符串,并输出var arr = [1, 2, 3, 4, 5];var str = ""; //空字符串for (var i = 0; i < arr.length - 1; i++) {str += arr[i] + ",";}console.log(str + arr[arr.length - 1]) //最后一个元素的索引=所有元素的长度-1// 案例7:去掉数组中所有的0,把其他的数据放在新的数组中var arr = [12, 0, 45, 89, 0, 23, 0, 12, 45, 4];var str = [];for (var i = 0; i < arr.length; i++) {if (arr[i] != 0) {str[str.length] = arr[i];}}console.log(str);// 案例8:反转数组var arr = [7, 6, 5, 4, 3, 2, 1];var temp;//循环的目的是控制交换的次数for (var i = 0; i < arr.length / 2; i++) {temp = arr[i];arr[i] = arr[arr.length - 1 - i];arr[arr.length - 1 - i] = temp;}console.log(arr);// 案例9:冒泡排序var arr = [12, 45, 78, 5, 3, 21, 19, 82, 43]// 循环控制比较的行数(有6个数,就比较五行,所以是length-1)for (var i = 1; i <= arr.length - 1; i++) {
// 控制每一行比较的次数for (var j = 0; j < arr.length - i; j++) {
// 开始比较if (arr[j] > arr[j + 1]) {var temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}console.log(arr);// 案例10:将1-4案例写成一个方法var sum = 0;var min = Number.MAX_VALUE;var max = Number.MIN_VALUE;var arr = [1, 9, 2, 8];for (var i = 0; i < arr.length; i++) {
// 求最小值if (min > arr[i]) {min = arr[i];} // end if
// 求最大值else if (max < arr[i]) {max = arr[i];}//end ifsum += arr[i];var allArr = [min, max, sum]} //end forconsole.log("最小值" + allArr[0] + "最大值" + allArr[1] + "求和" + allArr[2])
2函数
1)为什么要使用函数
把一堆代码进行封装,需要的时候拿来直接用,减少代码的重复量
2)函数先定义后调用,有参数有返回值的函数
3)函数没有返回值,但是在调用的时候接收了,结果是undefined
4)函数形参大于实参,结果是NaN
5)实参可以是变量,也可以是具体的值
6)案例
// 1:求两个数字的和function sum2(a, b) {return a + b;}console.log(sum2(1, 2));// 2:求三个数字的和function sum3(a, b, c) {return a + b + c;}console.log(sum3(1, 2, 3));// 3:求两个数字的最大值function max(a, b) {return a > b ? a : b;}console.log(max(5, 3));// 4:求1-100所有数字的和function sum4(n) {var sum = 0;for (var i = 1; i <= n; i++) {sum += i;}return sum;}console.log(sum4(100));// 5:求1-100所有偶数的和function oddSum(n) {var sum = 0;for (var i = 0; i <= n; i++) {if (i % 2 == 0) {sum += i;}}return sum;}console.log(oddSum(100))// 5:求1-100所有偶数的和function oddSum2(n) {var sum = 0;for (var i = 0; i <= n; i++) {if (i % 2 == 0) {sum += i;}}console.log(sum)}oddSum2(100)// 5:求一个数组的和function arrAy(arr) {var sum = 0;for (var i = 0; i < arr.length; i++) {sum += arr[i]}
// return sum;console.log(sum); //一个函数,计算和,输出和,一个函数只做一个功能,这时候把结果返回,在函数调用的时候输出和}// console.log(arrAy([1,9,2,8]))arrAy([1, 2, 3])// 7:求n-m之间所有数字的和function sum7(n, m) {var sum = 0;for (var i = n; i <= m; i++) {sum += i;}return sum;}console.log(sum7(1, 100))// 8:圆的面积function area(r) {return Math.PI * r * r;}console.log(area(2))// 9:求两个数的最大值function twoMax(a, b) {return a > b ? a : b;}console.log(twoMax(1, 2))
前端全栈学习第十二天-js第三天-基础相关推荐
- 前端全栈学习第十四天-js-WebAPI-第二天
1:元素的样式操作案例 2:innerText和innerContent兼容代码 3:自定义属性 1:元素的样式操作案例 案例1:小图大图的切换 思路:大图放在a链接里面,是看不到的,里面再包一个im ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-2.启动项目
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-2.启动项目 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 技能学习:学习 ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-3.路由、模型与数据库操作
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-3.路由.模型与数据库操作 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-8.使用mavoneditor(vue的markdown编辑器),并批量上传图片
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-8.使用mavoneditor(vue的markdown编辑器),并批量上传图片 技能学习:学习使用php(tp6框架) + ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-6.用户登录(二),token验证
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-6.用户登录(二),token验证 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本 ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-4.跨域且传输数据,并优化后端接口
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-4.优化后端接口,前端使用axios实现接口功能 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站 ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-7.分类的模型关联和通用CRUD接口
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-7.分类的模型关联和通用CRUD接口 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和 ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-5.用户登录,密码的bcrypt(hash)加密与验证
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-5.用户登录,密码的bcrypt(hash)加密与验证 技能学习:学习使用php(tp6框架) + vue.js,开发前端全 ...
- 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境
技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 技能学习 ...
最新文章
- 在kindle fire 上安装CM10 Jelly Bean ROM
- 麦森数(洛谷P1045题题解,Java语言描述)
- 27、简述redis的有哪几种持久化策略及比较?
- Ubuntu14.04 indigo ROS的一些使用指令
- matlab feedforward,Matlab BP神经网络工具箱之feedforwardnet使用小结
- java点击按钮弹出警告_GUI求教~~~我想点击按钮确定后,弹出一个提示框输入有误!,,…...
- excel 使用连接符合并单元格内容或者给单元格内容添加信息
- STM32G030C8T6跑马灯程序V0.2(四)
- Ubuntu 16.04 安装 搜狗输入法
- 【数据结构】【王道】【树与二叉树】中序二叉线索树的实现及基本操作(可直接运行)
- Endnote快速上手
- 概率论与数理统计(3)--指数分布函数及其期望、方差
- unlink快速入门
- android 双向加密算法,Android编程加密算法小结(AES、Base64、RAS加密算法)
- 2021 CCPC 哈尔滨 E. Power and Modulo (思维题)
- Python计算机二级大题
- Android12之OpenSL ES中Realize实例化AudioManager(十二)
- 30天自制操作系统第三天
- java: JDK isn‘t specified for module ‘maven-junit41‘解决办法
- 任务卡_01-Java基础语法_第4节 流程控制