数据存储--数组;

强类型语言数组

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部分---数组及练习题;的更多相关文章

  1. Js删除数组重复元素的多种方法

    js对数组元素去重有很多种处理的方法,本篇文章中为网络资源整理,当然每个方法我都去实现了:写下来的目的是希望自己活学活用,下次遇到问题后方便解决. 第一种 function oSort(arr){ v ...

  2. js去除数组重复项

    /** * js去除数组重复项 */ //方法一.使用正则法 // reg.test(str),匹配得到就返回true,匹配不到返回false var arr = ["345",& ...

  3. js 判断数组包含某值的方法 和 javascript数组扩展indexOf()方法

    var  questionId = []; var anSwerIdValue = []; ////javascript数组扩展indexOf()方法 Array.prototype.indexOf ...

  4. 探讨js字符串数组拼接的性能问题

    这篇文章主要介绍了有关js对字符串数组进行拼接的性能问题,字符串连接一直是js中性能最低的操作之一,应该如何解决呢?请参看本文的介绍 我们知道,在js中,字符串连接是性能最低的操作之一. 例如: 复制 ...

  5. js之数组,对象,类数组对象

    许久不写了,实在是不知道写点什么,正好最近有个同事问了个问题,关于数组,对象和类数组的,仔细说起来都是基础,其实都没什么好讲的,不过看到还是有很多朋友有些迷糊,这里就简单对于定义以及一下相同点,不同点 ...

  6. js对数组的操作函数

    js数组的操作 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手, ...

  7. JS 索引数组、关联数组和静态数组、动态数组

    JS 索引数组.关联数组和静态数组.动态数组 数组分类: 1.从数组的下标分为索引数组.关联数组 var ary1 = [1,3,5,8]; //按索引去取数组元素,从0开始(当然某些语言实现从1开始 ...

  8. JS 中数组的排序和去重

    在 PHP 中,数组有很多排序方法,不过其他语言的数组中大概是不会像 JS 的数组一样,包罗万象,啥都通吃的.所以 JS 的数组排序情况就略多一些了. 简单粗暴的排序: 赤果果的sort: var   ...

  9. JS去除数组中重复值的四种方法

    JS去除数组中重复值的四种方法 1 /// <summary>            o[this[i]] = "";  }      }       newArr.p ...

随机推荐

  1. Excel公式中双引号和单引号输入和显示以及函数的选择确认

    [Excel中显示双引号] 1.直接输入双引号“”或单引号“ 2.工式中显示双引号需输入“”“”“”(六个引号)或单引号需输入“”“”(四个引号) [Excel中快速确认已选择的函数] 1.用键盘的上 ...

  2. bzoj 3529 数表 莫比乌斯反演+树状数组

    题目大意: 有一张N×m的数表,其第i行第j列(1 < =i < =礼,1 < =j < =m)的数值为能同时整除i和j的所有自然数之和.给定a,计算数表中不大于a的数之和. ...

  3. 戴文的Linux内核专题:08内核配置(4)

    转自Linux中国 这个第四部分里,我们将继续配置更多的设置和特性. 这里我们被问及关于"IBM Calgary IOMMU support (CALGARY_IOMMU)".这个 ...

  4. “人少也能办大事”---K2 BPM老客户交流会

    主题:固铂轮胎工作流项目分享-K2 SmartForm下的工作流快速开发 嘉宾:王彦(固铂轮胎IT资深经理) 国内业务规模越来越大,流程越来越复杂,跨部门跨组织的流程纸质审批非常复杂,内控的要求越来越 ...

  5. MySQL数据库远程连接

    12.00 MySQL数据库远程连接 参考: http://www.jb51.net/article/24508.htm http://www.linuxdiyf.com/viewarticle.ph ...

  6. Matlab与C/C++联合编程之Matlab以MEX方式调用C/C++代码(一)

    MEX文件是一种可在matlab环境中调用的C语言(或fortran)衍生程序,mex的编译结果实际上就是一个带输出函数mexFunction 的dll文件. 中文名 mex文件 外文名 MATLAB ...

  7. Android手机号码不是所有的都能获取

    手机号码不是所有的都能获取.只是有一部分可以拿到.这个是由于移动运营商没有把手机号码的数据写入到sim卡中.SIM卡只有唯一的编号,供网络与设备识别那就是IMSI号码,手机的信号也可以说是通过这个号码 ...

  8. SharePoint 2013 Nintex Workflow 工作流帮助(八)

    博客地址 http://blog.csdn.net/foxdave 工作流动作 15. Complete Workflow Task(User interaction分组) 此工作流动作将完成任何进行 ...

  9. 虚拟机无法上网的问题:无法启动VMnet0等问题

    虚拟机无法上网,由于之前安装过虚拟机,后来将它卸载了,然后重新安装,最后出现了虚拟机无法上网.刚开始以为是系统的原因,于是就通过linux命令查看系统里面的网卡时是否启动,如:/etc/init.d/ ...

  10. 码表由来:ascll码-Gbk2312-GBK-Unicode-UTF-8

    码表ascll码-Gbk2312-GBK-Unicode-UTF-8, ascll是基本的标准码表,GB2312是中文码表,GBK是扩展之后的码表,Unicode是国际通用码表,UTF-8是优化后的U ...