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第三天-基础相关推荐

  1. 前端全栈学习第十四天-js-WebAPI-第二天

    1:元素的样式操作案例 2:innerText和innerContent兼容代码 3:自定义属性 1:元素的样式操作案例 案例1:小图大图的切换 思路:大图放在a链接里面,是看不到的,里面再包一个im ...

  2. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-2.启动项目

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-2.启动项目 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 技能学习:学习 ...

  3. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-3.路由、模型与数据库操作

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-3.路由.模型与数据库操作 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 ...

  4. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-8.使用mavoneditor(vue的markdown编辑器),并批量上传图片

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-8.使用mavoneditor(vue的markdown编辑器),并批量上传图片 技能学习:学习使用php(tp6框架) + ...

  5. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-6.用户登录(二),token验证

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-6.用户登录(二),token验证 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本 ...

  6. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-4.跨域且传输数据,并优化后端接口

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-4.优化后端接口,前端使用axios实现接口功能 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站 ...

  7. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-7.分类的模型关联和通用CRUD接口

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-7.分类的模型关联和通用CRUD接口 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和 ...

  8. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-5.用户登录,密码的bcrypt(hash)加密与验证

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-5.用户登录,密码的bcrypt(hash)加密与验证 技能学习:学习使用php(tp6框架) + vue.js,开发前端全 ...

  9. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境

    技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境 技能学习 ...

最新文章

  1. 在kindle fire 上安装CM10 Jelly Bean ROM
  2. 麦森数(洛谷P1045题题解,Java语言描述)
  3. 27、简述redis的有哪几种持久化策略及比较?
  4. Ubuntu14.04 indigo ROS的一些使用指令
  5. matlab feedforward,Matlab BP神经网络工具箱之feedforwardnet使用小结
  6. java点击按钮弹出警告_GUI求教~~~我想点击按钮确定后,弹出一个提示框输入有误!,,…...
  7. excel 使用连接符合并单元格内容或者给单元格内容添加信息
  8. STM32G030C8T6跑马灯程序V0.2(四)
  9. Ubuntu 16.04 安装 搜狗输入法
  10. 【数据结构】【王道】【树与二叉树】中序二叉线索树的实现及基本操作(可直接运行)
  11. Endnote快速上手
  12. 概率论与数理统计(3)--指数分布函数及其期望、方差
  13. unlink快速入门
  14. android 双向加密算法,Android编程加密算法小结(AES、Base64、RAS加密算法)
  15. 2021 CCPC 哈尔滨 E. Power and Modulo (思维题)
  16. Python计算机二级大题
  17. Android12之OpenSL ES中Realize实例化AudioManager(十二)
  18. 30天自制操作系统第三天
  19. java: JDK isn‘t specified for module ‘maven-junit41‘解决办法
  20. 任务卡_01-Java基础语法_第4节 流程控制

热门文章

  1. 微信小程序聊天室(云开发)
  2. 群邑智库:2019年跨年晚会分析
  3. C-语言-detail(上)
  4. JavaWeb前后端分离架构
  5. 西部数码域名注册Python版本
  6. FORTRAN+计算物理学学习日记(5)
  7. 渗透小白4:CTF实践
  8. 其实一切与游戏无关--yy笔录+转载网络游戏服务器设计
  9. 使用AudioRecord实现暂停录音功能
  10. 思维拓展--斐波那契问题