1、引用

/*          var num = 10;function show(num){num  ;alert(num);}alert(num); //10show(num);  //11  num = numalert(num); //10*//*引用*//*var arr = [1, 2, 3, 4];function show(arr){arr.push("hello");alert(arr);}alert(arr); //[1, 2, 3, 4]show(arr);  //[1, 2, 3, 4, "hello"]alert(arr); //[1, 2, 3, 4, "hello"]*/

2、引用排序函数

<html lang="en"><head><meta charset="UTF-8"><title>Document</title><script src = "tool.js"></script><script>var arr = [10, 9, 5, 1, 2, 6, 7];// bubbleSort(arr);selectSort(arr);alert(arr);</script></head><body></body>
</html>

3、return

/*function add(num1, num2){var b = num1   num2;return "hello";}*/
        /*1、确定你的函数要不要结果。2、return语法,return后面写什么,外面拿到的值,就是return后面的表达式。*//*var res = add(10, 20);alert(res);*/

4、arguments

            function show(){alert(arguments.length);alert(arguments); //输出:object Arguments}show(1, 2, 3);var arr = [1, 2, 3, 4, 5];show(arr);

5、习题

1、有一个从小到大排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。([2,3,4,56,67,98] //63
2、编写函数map(arr) 把数组中的每一位数字都增加30%
3、编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型
        /*var arr = [2,3,4,56,67,98];var num = 63;for(var i = 0; i < arr.length; i  ){if(arr[i] > num){arr.splice(i, 0, num);break;}}*/// alert(arr);/*关键:找出第一个第一个比该数大的数*/var arr = [10, 20, 30, 40, 60];function map(arr){for(var i = 0; i < arr.length; i  ){arr[i] = arr[i] * 1.3;}}/*map(arr);alert(arr);*/function has(arr, num){var isHas = false; //假设没有for(var i = 0; i < arr.length; i  ){if(arr[i] == num){isHas = true;break;}}return isHas;}var res = has(arr, 60);alert(res);
4、生成13位条形码(对之前的知识综合练习)
Ean-13码规则:第十三位数字是前十二位数字经过计算得到的校验码。
例如:690123456789
第三位计算其校验码的过程为:
1、前十二位的奇数位和6 0 2 4 6 8=26
2、前十二位的偶数位和9 1 3 5 7 9=34
3、将奇数和与偶数和的三倍相加26 34*3=128
4、取结果的个位数:128的个位数为8
5、用10减去这个个位数10-8=2
所以校验码为2(注:如果取结果的个位数为0,那么校验码不是(10-0=10),而是0)实现方法ean13()计算验证码,输入12位条码,返回带验证码的条码。
例如:输入:692223361219输出:6922233612192//想办法将这个十二位数拆成每一位//69012345678function barCode(num){//1、分别取出每一位数var numArr = []; //存储取下来的每一位数while(1){if(num == 0){break;}numArr.push(num % 10);num = parseInt(num / 10);}numArr.reverse();//2、求奇数和和偶数和var odd = 0;var even = 0;for(var i = 0; i < numArr.length; i  ){if(i % 2 == 0){//奇数位odd  = numArr[i];}else{//偶数位even  = numArr[i];}}//3、var tmp = (odd   even * 3) % 10;if(tmp != 0){tmp = 10 - tmp;}numArr.push(tmp);return Number(numArr.join(""));}var res = barCode(690123456789
);alert(res);
5、编写函数norepeat(arr) 将数组的重复元素去掉,并返回新的数组

/*
倒着删除
【注】凡是遍历数据去重,都倒着删除。
*/

                function noRepeat(arr){//去重//选择arr.length - 1个数 和后面进行比较//i选出的数/*for(var i = 0; i < arr.length - 1; i  ){//j被比的数for(var j = i   1; j < arr.length; j  ){if(arr[i] == arr[j]){arr.splice(j, 1);}}}*/for(var i = arr.length - 1; i > 0; i--){for(var j = i - 1; j >= 0; j--){if(arr[i] == arr[j]){arr.splice(j, 1);}}}}var arr = [10, 20, 20, 20, 30, 20, 40, 50];noRepeat(arr);alert(arr);
6、猴子吃桃

最强王者法则:
1、找出临界值,临界值就是,不用计算,直接心算得出的值。
2、找出第n次和n-1次的关系
3、假设函数已经可以使用,写出n和n-1之间的公式。

        有一堆桃子不知数目,猴子第一天吃掉一半,觉得不过瘾,又多吃了一只,第二天照此办法,吃掉剩下桃子的一半另加一只,天天如此,到第num(num <= 10)天早上,猴子发现只剩一只桃子了,问这堆桃子原来有多少只?n为还剩n天吃完的桃子数分析:peach(10) / 2 - 1 = peach(9);peach(10) = (peach(9)   1) * 2;peach(n) = (peach(n - 1)   1) * 2;function peach(n){if(n == 1){return 1;}return (peach(n - 1)   1) * 2;}//46var res = peach(5);alert(res);
7、密文
/*某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:1、每位数字都加上5,2、然后用除以10的余数代替该数字,3、再将第一位和第四位交换,4、第二位和第三位交换,请编写一个函数,传入原文,输出密文*///4 3 2 1function ciphertext(num){//1、拆成数组var numArr = [];while(1){if(num == 0){break;}numArr.push(num % 10);num = parseInt(num / 10);}for(var i = 0; i < numArr.length; i  ){numArr[i]  = 5;numArr[i] = numArr[i] % 10;}return Number(numArr.join(""));}var res = ciphertext(1234);alert(res);
8、计算器
<head><meta charset="UTF-8"><title>Document</title></head><body><input type="text" id = "num1" placeholder="请输入第一个数"><input type="text" id = "num2" placeholder="请输入第二个数"><!-- 点击按钮以后,执行后续字符串中的代码--><button onclick = "btnClick(' ');"> </button><button onclick = "btnClick('-');">-</button><button onclick = "btnClick('/');">/</button><button onclick = "btnClick('*');">*</button><button onclick = "btnClick('%');">%</button></body><script>function btnClick(operator){// alert(operator); var oNum1 = Number($("num1").value);var oNum2 = Number($("num2").value);//根据不同的运算符,进行不同的运算。var res = counter(oNum1, operator, oNum2);alert(res);}/*简化代码*/function $(id){return document.getElementById(id);}function counter(num1, operator, num2){var res = 0;//1、运算符判断switch(operator){case " ":res = num1   num2;break;case "-":res = num1 - num2;break;case "*":res = num1 * num2;break;case "/":res = num1 / num2;break;case "%":res = num1 % num2;break;default:alert("error");break;}return res;}</script>
</html>
【注】<body><!-- onclick = ""后面字符串中写着js的执行代码 --><button id = "btn" onclick = "btnClick();">按钮</button></body><script>/*var oBtn = document.getElementById("btn");oBtn.onclick = function(){alert(1);}*/function btnClick(){alert("点击");}</script>

更多专业前端知识,请上 【猿2048】www.mk2048.com

6-1 数组函数练习相关推荐

  1. Numpy 一维、二维数组、size/dtype/shape属性、数组函数arange/linspace/logspace /diag/zeros/ones/random 、多维数组索引和筛选)

    参考: https://gitbook.cn/gitchat/column/undefined/topic/5e3bceadec8d9033cf924665 打开 IPython ,创建 Python ...

  2. php 回调递归,PHP数组函数 array_walk_recursive (使用回调函数递归遍历数组元素)

    在PHP中,数组函数 array_walk_recursive () 使用回调函数递归遍历数组元素. 函数语法:array_walk_recursive ( array &$array , c ...

  3. php 刀客友朋,数组与数组函数学习心得

    //10个课堂未讲数组函数 /* array_column array_rand(); array_replace(); array_intresect(); array_diff(); array_ ...

  4. PHP数组用处_PHP 数组函数妙用

    巧妙利用php数组函数,解决二维数组查找问题 问题描述 最近在开发中遇到一个需求,突发奇想用php数组函数解决,在此记录一下. 问题简述:假设从数据表中取出所有同学成绩,需要按照如下规则进行查找数据: ...

  5. 【Python】Numpy扩充数组函数之repeat和tile用法

    2019独角兽企业重金招聘Python工程师标准>>> [Python]Numpy扩充数组函数之repeat和tile用法,有需要的朋友可以参考下. 用repeat和tile扩充数组 ...

  6. PHP数组函数总结与使用

    array_change_key_case(数组,CASE_LOWER/CASE_UPPER) 数组键值转化为小写CASE_LOWER/大写CASE_UPPER array_chunk(数组,分割后每 ...

  7. xcode新版本single view_动态数组函数系列1|概况-跟以往Excel版本完全不一样玩法的函数...

    早就听说在Office2019和Office365版本中增加了动态数组函数(Dynamic arrays),早前一直处于内测阶段,只对部分预览用户开放.昨天试了一下,我用的版本已经更新可用了.当前我使 ...

  8. 循环数组函数c语言,C语言练习题2(分支结构循环结构数组函数2009-2012二级真题)..doc...

    C语言练习题2(分支结构循环结构数组函数2009-2012二级真题). C语言练习题(二) 一 选择题 1.有以下程序 #include void main() { int a: canf(" ...

  9. php手册数组函数,PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集...

    PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集 array_diff (PHP 4 >= 4.0.1, PHP 5) array_d ...

  10. php新增数组函数,php操作数组函数

    整理了一份PHP开发中数组操作大全,包含有数组操作的基本函数.数组的分段和填充.数组与栈.数组与列队.回调函数.排序.计算.其他的数组函数等. 一.数组操作的基本函数 数组的键名和值 array_va ...

最新文章

  1. OpenCV+python:ROI与泛洪填充
  2. 四、编译安装php-5.5.34
  3. 2016蓝桥杯省赛---java---B---3(平方怪圈)
  4. 835. Trie字符串统计
  5. [设计模式] ------ 原型模式(浅拷贝和深拷贝)
  6. Intel® Nehalem/Westmere架构/微架构/流水线 (5) - 高速缓存 存储器子系统
  7. mysql pk_mysql_1
  8. 各位,请慎用 subList!原来这么多坑!!
  9. Canvas 实现小程序动画
  10. 产品读书《交互设计沉思录》
  11. 《你的灯亮着吗》开始解决问题前,得先知道“真问题”是什么
  12. 关于Windows mobile设备中心,同步软件不出现,打开卡住问题的解决
  13. python 行列转换_行列转换的Mysql,Excel,Python解法
  14. Android7.0 头像 拍照、照片裁剪
  15. python登录微信pc版_腾讯TIM iOS版2.5.6重大更新:新增支持微信帐号登录、语音进度条...
  16. Burp Suite使用介绍(一)
  17. mcnpf5输出结果_MCNP入门教程
  18. 今日感慨:鲜花大多插牛粪
  19. 莫烦Python视频笔记
  20. DBHelper类的使用操作

热门文章

  1. MySQL中引入存储引擎意义是_mysql学习九:存储引擎、存储过程和函数的引入
  2. 【MFC系列3】永远点不到的按钮
  3. win10存储池_3个光威480G SSD组WIN10存储池,深度测试到底值不值得搞
  4. android+4.4+jni闪退,native2.1 安卓退到后台时,概率闪退
  5. socketserver和socket的补充(验证客户端合法性)
  6. 【01背包】洛谷P1282多米诺骨牌
  7. ArcGIS API for Silverlight地图加载众多点时,使用Clusterer解决重叠问题
  8. JSP内置对象之WEB安全性及config对象
  9. Oracle Golden Gate 系列十三 -- 配置GG进程检查点(checkpoint) 说明
  10. 用 JA Transmenu 模块做多级弹出菜单