练习:
通过循环按行顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。试编程。

   2   3   4   5
6   7   8   9   10
11 12 13 14  15
16 17 18 19  20
21 22 23 24  25

		var arr=[];
		for(var i=0;i<5;i++){
			var j=i*5+1;
			var k=5;
			arr[i] = new Array();
			while(k--){
				arr[i].push(j++);

			}
			for(var x=i+1,z=0;x>0;x--,z++)
				document.write(arr[i][z]+" ");
			document.write("<br/>");
		}
			var a = [[],[],[],[],[]];
			for(var i=0; i<25; i++){
				a[parseInt(i/5)].push(i+1);
			}
			console.log(a);

			for(var i=0; i<a.length; i++){
				for(var j=0; j<i+1; j++){
					document.write(a[i][j] + "\t");
				}
				document.write("<br>");
			}

定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程。

var list = [];
for(var i=2; i<=100000; i+=2){
     if(list.push(i) == 30) break;
}
var newlist = [];
var count = 0;
var sum = 0;
for(var i in list){
     sum += list[i];
     if( ++count == 5){
          newlist.push(sum/5);
          count = sum = 0;
     }
}
			var arr=[];
			var arr_t=[];
			for(var i=2,j=0;j<30;i+=2,j++){
				arr.push(i);
			}
			console.log(arr);
			for(var k=0;k<arr.length-4;k++){
				arr_t[k]=0;
				for(var z=k;z-k<5;z++){
					arr_t[k]+=arr[z];
				}
				arr_t[k]/=5;

			}
			console.log(arr_t);

随机点名程序

var namelist = ["小明","小红","小刚","大宝"];

function randName(){
     return  namelist[parseInt(Math.random()*namelist.length)];
}


数字字母验证码

var list = ['1','2','3','4','5','6','7','8','9','0','a','b','c'];


请编写一个函数join,将数组的每一位按照指定字符链接起来 ,例如: join([1,2,3], "%"), 运行结果"1%2%3";

function join(arr, sp){
        var str = "";
        for(var i=0; i<arr.length; i++){
                if(i==(arr.length-1)){
                        str += arr[i];     
                } else {
                        str += (arr[i]+sp);
                }
        }
}
			function join(arr,str){
				var res="";
				for(var i of arr){
					res+=i+str;
				}
				console.log(res.substring(0,res.length-1));
			}
			join([1,2,3],'%');


随机生成一个五位以内的数,然后输出该数共有多少位,每位分别是什么
			function test(){
				var str=""+parseInt(Math.random()*1000000);
				console.log("随机生成的数:"+str);

				for(var i in str)
					console.log("第 "+(Number(i)+1)+" 位是:"+str[i]);

			}


编写函数map(arr) 把数组中的每一位数字都增加30%

var list = [10000, 12000, 15000, 18000];
			function test(list){
				console.log(list);//[10000, 12000, 15000, 18000]
				for(var num in list)
					list[num]+=list[num]*0.3;
				console.log(list);// [10000, 12000, 15000, 18000]
			}
			test( [10000, 12000, 15000, 18000] );	

编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型
			function has(arr,num){
				for(var i of arr){
					if(i==num){
						console.log("数组中有 "+num+" 这个元素");
						return true;
					}
				}
				console.log("数组中没有 "+num+" 这个元素");
				return false;
			}
			has( [10000, 12000, 15000, 18000],10000 );	


编写函数norepeat(arr) 将数组的重复元素去掉,并返回新的数组

var list = [13, 14, 15, 13, 15, 20 ,80];

			function norepeat(arr){

				for(var i=0;i<arr.length;i++){
					for(var j=i+1;j<arr.length;j++){
						if(arr[i]==arr[j])
							arr.splice(j,1);
					}
				}

				console.log(arr);

			}
			norepeat( [13, 14, 15 , 20, 20 ,13 ,15, 13, 15, 20 ,80]);







js基础练习(四)的更多相关文章

  1. js基础教程四之无缝滚动

    前面学习了相关js的一些基础知识,这节主要针对定时器作综合运用: 无缝滚动-基础 效果演示: *物体运动基础 *让div移动起来 *offsetLeft的作用 *用定时器让物体连续移动 <sty ...

  2. Node.js基础学习四之注册功能

    前言:在Node.js学习(二)和(三)中介绍了如何在Node.js 中获取登录的用户名和密码与数据库进行验证并返回数据给客户端 需求:实现注册功能 为了区分登录和注册是两个不同的请求,在端口后面加上 ...

  3. Three.js基础探寻四——立方体、平面与球体

    前面简单介绍了webGL和Three.js的背景以及照相机的设定,接下来介绍一些Three.js中的几何形状. 1.立方体 虽然这一形状的名字叫立方体(CubeGeometry),但它其实是长方体,也 ...

  4. js基础第四天

    多个tab栏切换class封装 <style>         *{margin:0;padding:0;}         ul{list-style:none;}         .b ...

  5. [妙味JS基础]第四课:JS数据类型、类型转换

    知识点总结 JS数据类型:number数字(NaN).string字符串.boolean布尔值.函数类型.object对象(obj.[].{}.null).undefined未定义 typeof 用来 ...

  6. JS基础(四)之jQuery

    31.jQuery(http://jquery.com/)是一个快速.简洁的JavaScript框架. 它封装了JavaScript常用的功能代码,提供一种便捷的JavaScript设计模式,优化HT ...

  7. JS基础(四)运算符

    一.比较运算符 1.== : 判断两边值是否相等 2.>= : 判断左边的值是否大于或等于右边的值 3.<= : 判断左边边的值是否小于或等于右边的值 4.>   : 判断左边的值是 ...

  8. JS基础学习四:绑定事件

    添加事件 IE: attachEvent Other: addEventListener var button = document.getElementById("buttonId&quo ...

  9. js基础练习二之简易日历

    今天学到了js基础教程3,昨天的课后练习还没来的及做,这个是类似简易日历的小案例,视频还没听完,今晚继续...... 先看效果图: 其实做过前面的Tab选项卡,这个就很好理解了,通过鼠标放在不同月份月 ...

  10. Bootstrap<基础十四> 按钮下拉菜单

    使用 Bootstrap class 向按钮添加下拉菜单.如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可.也可以使用 <span class=&qu ...

随机推荐

  1. 【Python简介】

    一.Python的简介 1.什么是python? Python(发音:[ 'paiθ(ə)n; (US) 'paiθɔn ]),是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用 ...

  2. linux 操作swap分区

    Swap是Linux下的交换分区,类似Windows的虚拟内存,当物理内存不足时,系统可把一些内存中不常用到的程序放入Swap,解决物理内存不足的情况. 若系统安装时开辟的Swap空间太小,可通过手动 ...

  3. Endless Spin

    clj的题.图是假的别看 得先做这个[HAOI2015]按位或 本题如果还用[HAOI2015]按位或 的方法,2^50拜拜 但是思路一定是这样的:min-max容斥,考虑每个S的第一触及次数期望 这 ...

  4. 服务器上的 Git - 在服务器上搭建 Git

    http://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E5%9C%A8%E6%9C%8D%E ...

  5. atom插件安装引发的nodejs和npm安装血案

    最近在写前端网页,学习就要从高大上的地方开始,于是我打算装一个atom编辑器. 本来就是由github客户端的,再装个atom也算是配套了吧,其实本白也是蛮费心思的,技术不怎么地,什么神器都再努力地使 ...

  6. javaWeb中,文件上传和下载

    在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用 ...

  7. 3.UiObejct API 详细介绍

    一.点击与长按 1.组件区域位置关系: Rect 对象代表一个矩形区域:[left,Top][ARight,Bottom](即左上角图标到右下角图标) 2.点击与长按相关API: 返回值 API 说明 ...

  8. [LeetCode] 29. Divide Two Integers ☆☆

    Divide two integers without using multiplication, division and mod operator. If it is overflow, retu ...

  9. Linux 目录详解 树状目录结构图

    1.树状目录结构图 2./目录 目录 描述 / 第一层次结构的根.整个文件系统层次结构的根目录. /bin/ 需要在单用户模式可用的必要命令(可执行文件):面向所有用户,例如:cat.ls.cp,和/ ...

  10. 巧用Javascript将相对路径地址转换为绝对路径

    这里介绍的其实本质上是两种方法,通过创建DOM或通过JavaScript计算: 1)通过新创建的Image, 经测试会发送一个Aborted的请求,并且IE6不支持, 将new Image改成docu ...