JS基础语法---数组案例---9个练习
练习1:求数组中所有元素的和
var arr1 = [10, 20, 30, 40, 50];
var sum = 0;
for (var i = 0; i < arr1.length; i++) {
sum += arr1[i];
}
console.log(sum);
练习2:求数组中所有元素的平均值
var arr2 = [1, 2, 3, 4, 5];
var sum2 = 0;
for (var i = 0; i < arr2.length; i++) {
sum2 += arr2[i];
}
console.log(sum2 / arr2.length);
练习3:求数组中所有元素中的最大值
var arr3 = [1, 9, 3, 10, 3330, 32];
var max = arr3[0];
for (var i = 0; i < arr3.length; i++) {
if (max < arr3[i]) {
max = arr3[i];
}
}
console.log("最大值:" + max);
但有bug:
var arr3=[-1,-2,-3];
//假设max变量中存储的是最大值
var max=0;
for(var i=0;i<arr3.length;i++){
//判断这个变量的值和数组中每个元素的值是不是最大值
if(max<arr3[i]){
max=arr3[i];
}
}
console.log("最大值:"+max);
练习4:求数组中所有元素的最小值
var arr4 = [100, 10, 20, 30, 40, 50];
var min = arr4[0]; //假设min里存储的就是最小值
for (var i = 0; i < arr4.length; i++) {
if (min > arr4[i]) {
min = arr4[i];
}
}
console.log("最小值:" + min);
练习5:倒序遍历数组
var arr5 = [10, 20, 30, 40, 50, 100];
// 正序
for (var i = 0; i < arr5.length; i++) {
console.log(arr5[i]);
}
//倒序
for (var i = arr5.length - 1; i >= 0; i--) {
console.log(arr5[i]);
}
练习6:把数组中每个元素用|拼接到一起产生一个字符串并输出
法1:
var names = ["卡卡西", "佐助", "鸣人", "大蛇丸", "仓木麻衣"];
var str = ""; //空的字符串
for (var i = 0; i < names.length - 1; i++) {
str += names[i] + "|";
}
console.log(str + names[names.length - 1]);
法2:
var names = ["卡卡西", "佐助", "鸣人", "大蛇丸", "仓木麻衣"];
var str = "";
for (var i = 1; i < names.length; i++) {
str += "|" + names[i];
}
console.log(names[0] + str);
练习7:去掉数组中重复的0,把其他的数据放在一个新的数组中
var arr = [10, 0, 20, 0, 30, 0, 50];
var newArr = []; //新数组,用来存放第一个数组中所有非0的数字
for (var i = 0; i < arr.length; i++) {
if (arr[i] != 0) {
newArr[newArr.length] = arr[i];
}
}
//把新数组的长度作为下标使用,数组的长度是可以改变的
console.log(newArr);
练习8:反转数组---把数组中的数据的位置调换
ps:var array = [10, 20, 30, 40, 50];
10和50交换位置,20和40交换位置。
则可知:
1. 循环次数,计数器,根据交换几次来决定,不论奇数或偶数个数据,交换次数都是数据长度的一半。即:i<array.length/2
2. 第一个和最后最后一个交换位置,引入第三方变量。则第一个放到第三方里,最后一个放到第一个里,最后一个放第三方
var array = [10, 20, 30, 40, 50];
//循环的目的是控制交换的次数
for (var i = 0; i < array.length / 2; i++) {
//先把第一个元素的值放在第三方变量中
var temp = array[i];
array[i] = array[array.length - 1 - i];
array[array.length - 1 - i] = temp;
}
console.log(array);
练习9:提示用户输入班级人数,求总成绩,平均值,最高分,最低分---扩展
      var perCount = parseInt(prompt("请输入班级人数"));
      //定义数组存储班级的每个人的成绩
      var perScores = [];
      //循环的方式录入每个人的成绩
      for (var i = 0; i < perCount; i++) {
        //把每个人的成绩存储到数组中
        perScores[perScores.length] = parseInt(
          prompt("请输入第" + (i + 1) + "的个人成绩:")
        );
      }
      console.log(perScores);
      //求总成绩
      var sum = 0;
      var avg = 0; //平均值
      var max = perScores[0]; //最大值
      var min = perScores[0]; //最小值
      for (var i = 0; i < perScores.length; i++) {
        sum += perScores[i]; //求和
        //求最大值
        if (max < perScores[i]) {
          max = perScores[i];
        //求最小值
        if (min > perScores[i]) {
            min = perScores[i];
          }
        }
      }
      //平均值
      avg = sum / perScores.length;
      console.log("和为:" + sum);
      console.log("平均值为:" + avg);
      console.log("最大值:" + max);
      console.log("最小值:" + min);
JS基础语法---数组案例---9个练习的更多相关文章
- JS基础语法---数组
		数组: 一组有序的数据 数组的作用: 可以一次性存储多个数据 数组的定义: 1. 通过构造函数创建数组 语法: var 数组名=new Array(); var array=new Array() ... 
- JS基础语法---数组基础知识总结
		数组: 存储一组有序的数据 数组的作用: 一次性存储多个数据 数组的定义方式: 1.构造函数定义数组: var 数组名=new Array(); 2.字面量方式定义数组: var 数组名=[]; ... 
- JavaScript进阶 - 第2章 你要懂的规则(JS基础语法)
		第2章 你要懂的规则(JS基础语法) 2-1什么是变量 什么是变量? 从字面上看,变量是可变的量:从编程角度讲,变量是用于存储某种/某些数值的存储器.我们可以把变量看做一个盒子,盒子用来存放物品,物品 ... 
- 【JS基础语法】---学习roadmap---6 parts
		JS基础语法---roadmap Part 1 - 2: Part 3 - 4: Part 5 - 6 
- JS基础语法(二)
		目录 JavaScript基础语法(二) 八. 函数 1. 函数的概念 2. 函数的使用 声明函数 调用函数 3. 函数的封装 4. 函数的参数 函数的参数匹配问题 5. 函数返回值 6. argum ... 
- JavaScript01 js基础语法,数据类型
		JavaScript的概述: 1.组成 三部分组成 ecmaScript 基础语法 (es5) dom document object model 文档对象模型 (操作html文档内容) bom bo ... 
- 9.12/ css3拓展、js基础语法、程序基本知识、数据类型、运算符表达方式、语句知识点
		css3拓展: <display:none> 将某个元素隐藏 <visibility:hidden> 也是将某个元素隐藏 <display:block&g ... 
- JS基础-语法+流程控制语句+函数+内置对象【数组】
		JS语法: Javascript基本数据类型:undefined/null/Boolean/number/string 复杂数据类型:object typeof用来检测变量的数据类型 typeof的使 ... 
- JS基础语法---Math对象的案例
		系统Max求最大值: var result= Math.max(10,20,30,40); console.log(result); 练习1:自己定义一个对象,实现系统的max的方法 //例子:自 ... 
随机推荐
- date:显示与设置系统时间
			功能: date命令用于显示当前的系统时间或设置系统时间 语法格式: date [option] [+format] date [选项] [+日期格式] 参数选项: option 参数选项: -d ... 
- Netty实战:设计一个IM框架
			来源:逅弈逐码 bitchat 是一个基于 Netty 的 IM 即时通讯框架 项目地址:https://github.com/all4you/bitchat 快速开始 bitchat-example ... 
- Java学习 1.2——简述JVM,JRE,JDK的关系
			在上一节中,我们了解了JVM相关的知识,有兴趣的话可以先去看一下: Java学习 1.1——(JVM介绍)Java为什么能够跨平台? 这个篇主要分享的是JRE,JDK,JVM三者的区别,简言之: JD ... 
- VMware+node+nginx+vue
			1.安装CentOS 这里不再复述,不会的请移步VMware虚拟机安装centos7 2.部署 1.安装 node.js cd /usr/local/ wget https://nodejs.or ... 
- [browser navigator 之plugins] 写了一个检测游览器插件
			检测IE插件 function hasIEPlugin(name){ try{ new ActiveXObject(name); return true; }catch(ex){ return fal ... 
- canvas绘制星星和月亮
			用变量的方式绘制一个五角星,首先求五角星十个顶点的坐标. 可以把每个五角星看成外顶点用一个大圆绘制,内顶点用小圆绘制.在坐标系(0deg)下,根据每个顶点的角度和圆的半径求得x,y. 而每个大顶点相差 ... 
- 前端JS实现一键导入excel表格
			前面的文章中已经讲过关于js表格的导出,此文章主要说到的是excel文件如何导入到网页中,并在网页端显示. 代码部分: <!DOCTYPE html> <html> <h ... 
- 一文解读MVC/MVP/MVVM (转)
			这篇文章对目前 GUI 应用中的 MVC.MVP 和 MVVM 架构模式进行详细地介绍. MVC 在整个 GUI 编程领域,MVC 已经拥有将近 50 年的历史了.早在几十年前,Smalltalk-7 ... 
- appium---App页面滑动
			我们操作app的过程中都会进行页面滑动,那么这个过程通过python怎么实现呢? 如何滑动 大家都非常的清楚我们手动在app上是如何滑动的,然后自动化只是模仿了手工的方法去实现,我们通过一个图来分析 ... 
- go设计模式--单例singleton
			创建型第一个,使用TDD作的. singleton.go package singleton type Singleton interface { AddOne() int } type single ... 
