6-1 数组函数练习

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/363526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

整理任务

昨晚帮师姐整理测试&#xff0c;没有时间写日志&#xff0c;今天一大早补上。 十一长假之后的第一个工作日&#xff0c;老师回来了。详细汇报了整个假期的学习之后&#xff0c;老师整理了以后我的学习任务。本来觉得没多少事情&#xff0c;可是细数了一下&#xff0c;竟然光论文…

Hive:使用Apache Hive查询客户最喜欢的搜索查询和产品视图计数

这篇文章涵盖了使用Apache Hive查询存储在Hadoop下的搜索点击数据。 我们将以示例的方式生成有关总产品浏览量的客户排名靠前的搜索查询和统计信息。 继续之前的文章 使用大数据分析客户产品搜索点击次数 &#xff0c; Flume&#xff1a;使用Apache Flume收集客户产品搜索点…

expdp错误案例

转自:https://www.cnblogs.com/kerrycode/p/3960328.html Oracle数据泵(Data Dump)使用过程当中经常会遇到一些奇奇怪怪的错误案例&#xff0c;下面总结一些自己使用数据泵(Data Dump)过程当中遇到的问题以及解决方法。都是在使用过程中遇到的问题&#xff0c;以后陆续遇到数据…

HashSet源码分析:JDK源码系列

1.简介 继续分析源码&#xff0c;上一篇文章把HashMap的分析完毕。本文开始分析HashSet简单的介绍一下。 HashSet是一个无重复元素集合&#xff0c;内部使用HashMap实现&#xff0c;所以HashMap的特征耶继承了下来。存储的元素是无序的并且HashSet允许使用空的元素。 HashSet是…

修改左侧导航显示样式(转载自Sunmoonfire's artistic matrix)

这是一片非常好的文章&#xff0c;修改下CSS就可以改变左侧导航栏的样式&#xff0c;在网上找了一些都是要写代码的。怕连接失效&#xff0c;所以直接将文章考了过来&#xff0c;希望作者原谅&#xff0c;如有不妥&#xff0c;请通知一声&#xff0c;我会将文章删掉&#xff01…

tf.argmax()以及axis

tf.argmax()表示返回最大值的索引号&#xff0c;axis为0 &#xff0c;表示返回每列最大值索引号。axis为1 &#xff0c;表示返回每行最大值索引号 结果为 转载于:https://www.cnblogs.com/san333/p/10507402.html

jquery ajax 上传文件 demo,Jquery+AJAX上传文件,无刷新上传并重命名文件

index.htmlAjax上传图片Ajax上传图片function upload(){var form new FormData(document.getElementById("form"));$.ajax({url:"upload.php",type:"post",data:form,cache: false,processData: false,contentType: false,success:function(dat…

Meet Fabric8:基于Camel和ActiveMQ的开源集成平台

面料8 Fabric8是Red Hat的JBoss Fuse产品的Apache 2.0许可上游社区。 这是一个基于Apache ActiveMQ &#xff0c; Camel &#xff0c; CXF &#xff0c; Karaf &#xff0c; HawtIO等的集成平台。 它提供了自动化的配置和部署管理&#xff0c;以帮助使部署变得容易&#xff0…

Django之web框架的本质

web框架的本质及自定义web框架 我们可以这样理解&#xff1a;所有的Web应用本质上就是一个socket服务端&#xff0c;而用户的浏览器就是一个socket客户端&#xff0c;基于请求做出响应&#xff0c;客户都先请求&#xff0c;服务端做出对应的响应&#xff0c;按照http协议的请求…

5:CSS元素类型

* { margin: 0; padding: 0 } body { padding: 30px; padding-top: 10px; line-height: 35px; font-family: "微软雅黑" } h1,h2 { padding: 20px 0 } h3 { background: #00AA88; color: #FFFCF4; font-size: 20px; font-weight: 700; margin: 10px 0; padding: 5px …

c#中的interface abstract 与 virtual(转)

interface用来声明接口 1.只提供一些方法规约&#xff0c;不提供方法主体. 如:public interface IPerson { void getName();//不包含方法主体 } 2.方法不能用public abstract等修饰,无字段变量&#xff0c;无构造函数。 3.方法可包含参数。 如 public interface IPers…

Springboot 系列(十三)使用邮件服务

在我们这个时代&#xff0c;邮件服务不管是对于工作上的交流&#xff0c;还是平时的各种邮件通知&#xff0c;都是一个十分重要的存在。Java 从很早时候就可以通过 Java mail 支持邮件服务。Spring 更是对 Java mail 进行了进一步的封装&#xff0c;抽象出了 JavaMailSender. 后…

服务器能否只做c盘系统,我的云服务器只有一个c盘

我的云服务器只有一个c盘 内容精选换一换检查Pkey是否一致。查看弹性云服务器内部分配到的Pkey&#xff1a;cat /sys/class/infiniband/mlx5_0/ports/1/pkeys/* | grep -v "0x0000"检查Pkey是否一致如果环境中查出来的Pkey只有一个&#xff0c;请联系技术支持人员。如…

单例模式(C++实现)

RAII运用 只能在栈上创建对象 只能在堆上创建的对象 单例模式 设计模式 懒汉模式 解决线程安全 优化 饿汉模式 饿汉和懒汉的区别

Flume:使用Apache Flume收集客户产品搜索点击数据

这篇文章涵盖了使用Apache flume收集客户产品搜索点击并使用hadoop和elasticsearch接收器存储信息。 数据可能包含不同的产品搜索事件&#xff0c;例如基于不同方面的过滤&#xff0c;排序信息&#xff0c;分页信息&#xff0c;以及进一步查看的产品以及某些被客户标记为喜欢的…

vue-cli使用swiper4在ie以及safari报错

vue-cli项目中&#xff0c;通过npm run swiper --save-dev安装的是swiper4版本的插件&#xff0c;这样安装以后在谷歌火狐等浏览器都可以正常运行&#xff0c;但是在safari浏览器&#xff08;可能是版本太低&#xff09;还有ie&#xff08;9,10,11&#xff09;打开会报错&#…

express框架

Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用&#xff0c;和丰富的 HTTP 工具。使用 Express 可以快速地搭建一个完整功能的网站。 Express 框架核心特性&#xff1a; 可以设置中间件来响应 HTTP 请求。 定义了路由表用于执…

电脑内部,小贴士:电脑内部连接标准

小贴士&#xff1a;电脑内部连接标准在介绍电脑内部连接标准之前&#xff0c;首先应该了解一下电脑内部接线的种类&#xff0c;以便分类处置。电脑内部尽管五颜六色的导线&#xff0c;其中导线的种类可以分为3 类&#xff0c;即电源线、信号线和控制线&#xff0c;而控制线又常…

window media player出现内部应用程序错误

相信很多人都会遇到过window media player出现“内部应用程序错误”&#xff0c;卸载了重装还是老样子。或者升级window media player到最新版本等等&#xff0c;却还是解决不了&#xff01;现在介绍一种方法&#xff0c;跟大家一起分享&#xff1a; 点左下角开始&#xff…

太快了,太变态了:什么会影响Java中的方法调用性能?

那么这是怎么回事&#xff1f; 让我们从一个简短的故事开始。 几周前&#xff0c;我提议对Java核心libs邮件列表进行更改 &#xff0c;以覆盖当前final一些方法。 这刺激了一些讨论主题-其中之一是其中一个性能回归通过采取这是一个方法被引入的程度final免遭停止它final 。 我…