练习:
通过循环按行顺序为一个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. POJ.3087 Shuffle'm Up (模拟)

    POJ.3087 Shuffle'm Up (模拟) 题意分析 给定两个长度为len的字符串s1和s2, 接着给出一个长度为len*2的字符串s12. 将字符串s1和s2通过一定的变换变成s12,找到 ...

  2. Linux下chkconfig命令详解--(启动或停止)和查询系统服务的运行级信息

    chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--ad ...

  3. jdk的keystore生成

    使用jdk路径下的keytool.exe生成 生成证书: 导出证书,此时输入生成证书时设置的密码:

  4. HTML+css零碎小知识

    1.设置了float浮动的元素和绝对定位position:absolute的元素会脱离正常的文档流.但是设置absolute的元素不会占据空间,相当于隐形了.   2.相对定位position:rel ...

  5. 51nod1056 最长等差数列 V2

    基准时间限制:8 秒 空间限制:131072 KB 分值: 1280  N个不同的正整数,从中选出一些数组成等差数列.   例如:1 3 5 6 8 9 10 12 13 14 等差子数列包括(仅包括 ...

  6. 【BZOJ】4873: [Shoi2017]寿司餐厅

    [题目]#2146. 「SHOI2017」寿司餐厅 [题意]给定n种寿司的代号,取区间[i,j]的寿司收益是d[i,j]和所有子区间的d,吃了c(c>0)种代号x的寿司的代价是mx^2+cx,给 ...

  7. 【CodeForces】947 D. Picking Strings

    [题目]D. Picking Strings [题意]给定只含'A','B','C'的字符串,支持以下变换:1.A - BC   2.B - AC   3.C - AB   4.AAA - empty ...

  8. 【CodeForces】901 C. Bipartite Segments

    [题目]C. Bipartite Segments [题意]给定n个点m条边的无向连通图,保证不存在偶数长度的简单环.每次询问区间[l,r]中包含多少子区间[x,y]满足只保留[x,y]之间的点和边构 ...

  9. 【LIbreOJ】#6256. 「CodePlus 2017 12 月赛」可做题1

    [题意]定义一个n阶正方形矩阵为“巧妙的”当且仅当:任意选择其中n个不同行列的数字之和相同. 给定n*m的矩阵,T次询问以(x,y)为左上角的k阶矩阵是否巧妙.n,m<=500,T<=10 ...

  10. virtual和abstract的区别和联系

    壹. 相同 他们有些相似.有些场景用哪个都行!   1. 修饰父类.让子类重写 virtual和abstract都是用来修饰父类的,通过覆盖父类的定义,让子类重新定义. 2. 都用必须public 如 ...