练习1:求2个数中的最大值

      function getMax(num1, num2) {
return num1 > num2 ? num1 : num2;
}
console.log(getMax(10, 20));
//console.log(getMax); //函数的代码

同:

      function getMax(num1, num2) {
return num1 > num2 ? num1 : num2;
}
var num1 = 10;
var num2 = 20;
//函数外面的num和函数的形参num1不是同一个变量
var result = getMax(num1, num2);
console.log(result);
//同:console.log(getMax); //函数的代码

练习2:求3个数中的最大值

      function getThreeMax(x, y, z) {
return x > y ? (x > z ? x : z) : y > z ? y : z;
}
console.log(getThreeMax(10, 34, 90));

练习3:判断一个数是否是素数(质数)

ps:

1. 只能被1和自身整除,质数是从2开始

2. 用这个数字和这个数字前面的所有的数字整除一次(没有1的,没有自身的)

      function isPrimeNumber(num) {
for (var i = 2; i < num; i++) {
if (num % i == 0) {
//说明有一个数字整除了,就没有必要向后继续整除了,此时就已经验证出不是质数
return false;
}
}
return true;
}
console.log(isPrimeNumber(7839) ? "是质数" : "不是质数");

同:

      function isPrimeNumber(num) {
for (var i = 2; i < num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
} var result = isPrimeNumber(3940);
if (result) {
console.log("这是数字是质数");
} else {
console.log("这是数字不是质数");
}

练习4:求两个数字的差

      function getSub(x, y) {
return x - y;
}
console.log(getSub(384, 2424));

练习5:求一组数字中的最大值

      function getArrayMax(array) {
var max = array[0];
for (var i = 0; i < array.length; i++) {
if (max < array[i]) {
max = array[i];
}
}
return max;
} var max = getArrayMax([30, 20, 10, 49, 59]);
console.log(max);
      //    var arr=[10,20,30,40,50];
      //    var max=getArrayMax(arr);
      //    console.log(max);
      // var max = getArrayMax([10, 20, 30, 40, 50]); //可以直接把数组传到函数中的
      // console.log(max);
 

练习6:求一组数字中的最小值

      function getArrayMax(array) {
var min = array[0];
for (var i = 0; i < array.length; i++) {
if (min > array[i]) {
min = array[i];
}
}
return min;
}
//测试----调用函数并传入一个数组,把数组中的最小值直接显示出来
console.log(getArrayMax([20, 49, 18, 60, 74, 73]));

练习7:求一组数字的和

      function getArraySum(array) {
var sum = 0;
for (var i = 0; i < array.length; i++) {
sum += i;
}
return sum;
}
console.log(getArraySum([1, 2, 3, 4, 5, 6, 7]));

练习8:求一个数组中的最大值和最小值还有和

ps:

1. 给我一个数组,我返回一个数组(最大值,最小值,和)

2. @param array参数是一个数组

3. @returns {*[]}返回值是一个数组,第一个元素值是最大值,第二个元素值是最小值,第三个元素值是和

      function getArrayMaxAndMinAndSum(array) {
var min = array[0]; //最小值
var max = array[0]; //最大值
var sum = 0; //和
for (var i = 0; i < array.length; i++) {
sum += array[i]; //和
//最大值
if (max < array[i]) {
max = array[i];
} // end if
//最小值
if (min > array[i]) {
min = array[i];
} //end if
} //end for
var array = [max, min, sum];
return array;
}
//测试
var resultArray = getArrayMaxAndMinAndSum([2, 3, 4, 5, 6, 7, 8, 9, 27]);
console.log("最大值:" + resultArray[0]);//
console.log("最小值:" + resultArray[1]);//
console.log("和:" + resultArray[2]);//71

练习9:通过函数实现数组反转

      function reverseArray(arr) {
for (var i = 0; i < arr.length / 2; i++) {
var temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
return arr;
}
console.log(reverseArray([1, 5, 10, 15, 20, 25, 30]));

实现:

练习10:通过函数实现冒泡排序

      function sortArray(arr) {
//控制比较的轮数
for (var i = 0; i < arr.length - 1; i++) {
//控制每一轮的比较次数
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] < arr[j + 1]) {
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
} //end if
} //end for
} //end for
return arr;
}
console.log(sortArray([0, 10, 4, 20, 400, 2, 45]));

实现:

JS基础语法---函数练习part2---10个综合练习(运用:循环/数组/函数)的更多相关文章

  1. JavaScript进阶 - 第2章 你要懂的规则(JS基础语法)

    第2章 你要懂的规则(JS基础语法) 2-1什么是变量 什么是变量? 从字面上看,变量是可变的量:从编程角度讲,变量是用于存储某种/某些数值的存储器.我们可以把变量看做一个盒子,盒子用来存放物品,物品 ...

  2. 【JS基础语法】---学习roadmap---6 parts

    JS基础语法---roadmap Part 1 - 2: Part 3 - 4:   Part 5 - 6

  3. 030 01 Android 零基础入门 01 Java基础语法 03 Java运算符 10 条件运算符

    030 01 Android 零基础入门 01 Java基础语法 03 Java运算符 10 条件运算符 本文知识点:Java中的条件运算符 条件运算符是Java当中唯一一个三目运算符 什么是三目运算 ...

  4. js基础语法之函数

    普通函数 function foo(a, b){ return a + b; } foo(10, 20) >>> 30 匿名函数 var f = function(){console ...

  5. JS基础语法---函数---介绍、定义、函数参数、返回值

    函数: 把一坨重复的代码封装,在需要的时候直接调用即可 函数的作用: 代码的重用 函数需要先定义,然后才能使用 函数名字:要遵循驼峰命名法 函数一旦重名,后面的会把前面的函数覆盖 Ctrl +鼠标左键 ...

  6. JS基础语法(二)

    目录 JavaScript基础语法(二) 八. 函数 1. 函数的概念 2. 函数的使用 声明函数 调用函数 3. 函数的封装 4. 函数的参数 函数的参数匹配问题 5. 函数返回值 6. argum ...

  7. 9.12/ css3拓展、js基础语法、程序基本知识、数据类型、运算符表达方式、语句知识点

    css3拓展: <display:none>  将某个元素隐藏       <visibility:hidden>  也是将某个元素隐藏 <display:block&g ...

  8. 【 js 基础 】【 源码学习 】柯里化和箭头函数

    最近在看 redux 的源码,代码结构很简单,主要就是6个文件,其中 index.js 负责将剩余5个文件中定义的方法 export 出来,其他5个文件各自负责一个方法的实现. 大部分代码比较简单,很 ...

  9. Swift超详细的基础语法-结构体,结构体构造器,定义成员方法, 值类型, 扩充函数

    知识点 基本概念 结构体的基本使用 结构体构造器(构造函数/构造方法) 结构体扩充函数(方法), 又称成员方法 结构体是值类型 1. 基本概念 1.1 概念介绍 结构体(struct)是由一系列具有相 ...

  10. JavaScript01 js基础语法,数据类型

    JavaScript的概述: 1.组成 三部分组成 ecmaScript 基础语法 (es5) dom document object model 文档对象模型 (操作html文档内容) bom bo ...

随机推荐

  1. PHP intdiv 数学函数

    定义和用法 intdiv - 对除法结果取整 版本支持 PHP4 PHP5 PHP7 不支持 不支持 支持 语法 intdiv ( int $dividend , int $divisor ) int ...

  2. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之七:安装前端服务器及部署管理器

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  3. iOS swift 带有attributeString的多行文本label

    class AttributeStringGenerator { var attributeString: NSMutableAttributedString! var lineSpacing: CG ...

  4. Linux相关集合

    本篇概述 Linux xshell6 连接 Hadoop 启动关闭 Linux xshell6 连接相关问题 首先,虚拟机 得先能通成网(具体教程可百度) 然后,进行 本机 ip 的查询(xshell ...

  5. Oracle数据库创建只读用户

    创建一个只读用户user2,只能查询管理员用户user1下的表,不能增删改. 操作环境:PL/SQL Developer 1.用管理员用户user1登录,创建用户user2.并授权 --创建用户use ...

  6. 2019 DevOps 必备面试题——DevOps 理念篇

    原文地址:https://medium.com/edureka/devops-interview-questions-e91a4e6ecbf3 原文作者:Saurabh Kulshrestha 翻译君 ...

  7. Doxygen程序注释转换说明文档

    Doxygen使用 https://www.jianshu.com/p/9464eca6aefe

  8. Data Management Technology(1) -- Introduction

    1.Database concepts (1)Data & Information Information Is any kind of event that affects the stat ...

  9. python连数据库制作音乐软件

    import pymysql conn = pymysql.connect(host="localhost",user="root",password=&quo ...

  10. 初级模拟电路:3-10 BJT实现开关电路

    回到目录 1. 基本用法 用BJT晶体管实现开关功能是经常会用到的实用电路.和逻辑门电路类似,当BJT用于开关电路时,也只工作于饱和区和截止区. 开关功能的实现电路如下图所示,负载可以是发光二极管.电 ...