js部分---数组及练习题;
数据存储--数组;
强类型语言数组
1.同一类型的数据存储的集合,在内存中是连续的
2.定义的时候需要制定长度
弱类型语言数组
1.可以存储任意类型的数据
2.在内存中不连续,不需要制定长度
定义一个数组
var aa=new Array();//造一个空数组,交给变量
var aa1=new Array(1,2,3,4,5)//造一个有默认值的数组
alert(aa1[0]);//输出数组第一项
//数组的取值和赋值
var aa=new Array();
aa[0]=10;
alert(aa[0]);
将数组里面的所有内容全部找到,遍历数组
var aa=new Array (1,2,3,4,5);
for(var i=0;i<aa.length;i++)
{
alert(aa[i]);
}
//弱类型语言的遍历
var aa=new Array (1,2,3,4,5);
for(var bb in aa)
{
alert(bb);//取到的是索引
alert(aa[bb]);//取到值
}
</script>
//强类型语言的遍历
foreach(int bb in aa)
{
console.write(bb);//取到的是值
}
//二维数组;
/*var aa=[
[1,2,3,4],
[5,6,7,8],
[9,8,7,6]
];
alert(aa[1][3]);
//遍历二维数组
for(var i=0;i<aa.length;i++)
{
for(var j=0;j<aa[i].length;j++)
{
alert(aa[i][j]);
}
}*/
练习题
1.//求 70,89,78,90,96,79,88,100,56,95 总和,最大值,平均值
//求总和
//var attr = [70,89,78,90,96,79,88,100,56,95];
/*var sum = 0;
for(var i=0;i<attr.length;i++)
{
sum = sum +attr[i];
}
alert(sum);*/
//求最大值
/* var maxn=0;
for(var i=0;i<attr.length;i++)
{
if(attr[i]>maxn)
{
maxn = attr[i];
}
}
alert(maxn);*/
//求平均值
/*var sum = 0;
for(var i=0;i<attr.length;i++)
{
sum = sum+attr[i];
}
var pingjun = sum/attr.length;
alert(pingjun);*/
2.
//冒泡排序
//9 8 7 6 5 4 3 2 1 排序
/*var paixu =new Array(9,8,7,6,2,4,3,1,5);
for(var i=0;i<paixu.length-1;i++)
{
for( var j=i+1;j<paixu.length;j++)
{
if(paixu[i]>paixu[j])
{
var zhong=paixu[i];
paixu[i]=paixu[j];
paixu[j]=zhong; } }
}
for(var bb in paixu)
{
alert(paixu[bb]);//或者alert(paixu); 可以直接输出数组
}*/
3.//查找某个值在数组中 的位置
/*var aa= new Array ();
aa=[1,3,2,4,5,6,9];
var zhao=3;
var sy=-1;
for(var i=0;i<aa.length;i++)
{
if(aa[i]=zhao)
{
sy=i;
}
}
if(sy==-1)
{
alert("没有找到");
}
else
{
alert(sy);
}*/
4//几个变量在数组中出现的次数 3 ,5, 7
方法一:var aa=[1,4,3,5,9,9,3,2,4,6,2,1,3,5,7,9,0,5,3,5,2,1,5,6,7,8,2,4,6,8,0,5];
var c3=0;
var c5=0;
var c7=0;
for(var i=0;i<aa.length;i++)
{
switch(aa[i]){
case 3:
c3++;
break;
case 5:
c5++;
break;
case 7:
c7++;
break; }
}
alert("出现3的次数"+c3+"出现5的次数"+c5+"出现7的次数"+c7); 方法二:var aa=[1,4,3,5,9,9,3,2,4,6,2,1,3,5,7,9,0,5,3,5,2,1,5,6,7,8,2,4,6,8,0,5];
var c3=0;
var c5=0;
var c7=0;
for(var i=0;i<aa.length;i++)
{
if(aa[i]==3)
{
c3++;
}
if(aa[i]==5)
{
c5++;
}
if(aa[i]==7)
{
c7++;
}
}
alert("出现3的次数"+c3+"出现5的次数"+c5+"出现7的次数"+c7
js部分---数组及练习题;的更多相关文章
- Js删除数组重复元素的多种方法
js对数组元素去重有很多种处理的方法,本篇文章中为网络资源整理,当然每个方法我都去实现了:写下来的目的是希望自己活学活用,下次遇到问题后方便解决. 第一种 function oSort(arr){ v ...
- js去除数组重复项
/** * js去除数组重复项 */ //方法一.使用正则法 // reg.test(str),匹配得到就返回true,匹配不到返回false var arr = ["345",& ...
- js 判断数组包含某值的方法 和 javascript数组扩展indexOf()方法
var questionId = []; var anSwerIdValue = []; ////javascript数组扩展indexOf()方法 Array.prototype.indexOf ...
- 探讨js字符串数组拼接的性能问题
这篇文章主要介绍了有关js对字符串数组进行拼接的性能问题,字符串连接一直是js中性能最低的操作之一,应该如何解决呢?请参看本文的介绍 我们知道,在js中,字符串连接是性能最低的操作之一. 例如: 复制 ...
- js之数组,对象,类数组对象
许久不写了,实在是不知道写点什么,正好最近有个同事问了个问题,关于数组,对象和类数组的,仔细说起来都是基础,其实都没什么好讲的,不过看到还是有很多朋友有些迷糊,这里就简单对于定义以及一下相同点,不同点 ...
- js对数组的操作函数
js数组的操作 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手, ...
- JS 索引数组、关联数组和静态数组、动态数组
JS 索引数组.关联数组和静态数组.动态数组 数组分类: 1.从数组的下标分为索引数组.关联数组 var ary1 = [1,3,5,8]; //按索引去取数组元素,从0开始(当然某些语言实现从1开始 ...
- JS 中数组的排序和去重
在 PHP 中,数组有很多排序方法,不过其他语言的数组中大概是不会像 JS 的数组一样,包罗万象,啥都通吃的.所以 JS 的数组排序情况就略多一些了. 简单粗暴的排序: 赤果果的sort: var ...
- JS去除数组中重复值的四种方法
JS去除数组中重复值的四种方法 1 /// <summary> o[this[i]] = ""; } } newArr.p ...
随机推荐
- 算法导论-钢条切割 C# 递归实现
下班前看到有位兄弟写 钢条切割问题,尝试实现C#版, 还没有实现最优版,分享一下. int[] parr; private void button1_Click(object sender, Even ...
- Windows任务计划
任务计划,可以将任何脚本.程序或文档安排在某个时间运行.“任务计划”在每次启动windows系统的时候自动启动(默认Task Scheduler服务是开启的)并在后台运行.使用“任务计划”可以完成以下 ...
- (转)iOS应用架构谈 view层的组织和调用方案
前言 <iOS应用架构谈 开篇>出来之后,很多人来催我赶紧出第二篇.这一篇文章出得相当艰难,因为公司里的破事儿特别多,我自己又有点私事儿,以至于能用来写博客的时间不够充分. 现在好啦,第二 ...
- Android 获取网络状态
1.检测网络是否可用 public boolean isNetWorkConnected() { ConnectivityManager cm = (ConnectivityManager)getSy ...
- STM32之GPIO端口位带操作
#ifndef __SYS_H #define __SYS_H #include "stm32f10x.h" //位带操作 //把“位带地址+位序号”转换别名地址宏 #define ...
- MVC5 烂笔头
HttpContent Controller:HttpContextBase View:HttpContext.Current View的搜寻顺序:本文件夹.本共享.根共享等 class=" ...
- iOS App上架流程(2016详细版
http://www.jianshu.com/p/b1b77d804254 iOS App上传项目遇到的问题 http://www.jianshu.com/p/9195cd991fc7
- kali 2016的基础配置
1.Kali 2016的更新源 deb http://http.kali.org/kali kali-rolling main contrib non-free 2.安装虚拟机 apt-get upd ...
- 一个比较完整的Inno Setup 安装脚本
一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...
- IDataReader转换成list通用方法
public static IList<T> ReaderToList<T>(this IDataReader dr) { //DateTime dt = DateTime.N ...