数据存储--数组;

强类型语言数组

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. 开通了cnblogs

    受够了百度空间,换个地方,或许会更好. 以后有机会会将百度空间你的文章搬过来的.

  2. [开发笔记]-DataGridView控件中自定义控件的使用

    最近工作之余在做一个百度歌曲搜索播放的小程序,需要显示歌曲列表的功能.在winform中采用DataGirdView来实现. 很久不写winform程序了,有些控件的用法也有些显得生疏了,特记录一下. ...

  3. C-union的使用

    union有两个作用: 1,节约空间,如果一个struct存在两个互斥的变量,则可以把这个struct变成union 2,将同一个内存作为多种解释 代码: #include <iostream& ...

  4. RPI学习--环境搭建_默认启动桌面/终端修改

    参见:http://elinux.org/RPi_raspi-config 首次运行Raspbian会自动进入设置,往后也可以重新进入设置: $ sudo raspi-config 选项3 Enabl ...

  5. checkbox的全选、反选、删除(适配器)

    package com.example.adapter; import java.util.List; import com.example.ay.R;import com.example.vo.Fl ...

  6. 通过使用ScriptManager.RegisterStartupScript,呈现后台多次使用alert方法

    在前台HTML中加入alert或者confirm,相信大家已经非常熟悉并且经常使用: <div onclick="alert('hello')">按钮1</div ...

  7. URL动态赋值

    url动态赋值: 指的是url中包含{selector},即花括号括起来的jQuery选择器,当提交该url时,框架会自动将selector对应元素的值替换到花括号所占区域. (感觉实现了一点类似el ...

  8. 毕向东Java基础:day09_3-4

    day09-03 1.匿名内部类的使用场景. Body{  //身体 包括心脏 private  class XinZhang{  // 心脏 可以body的成员变量.如果不想被别人访问,加上priv ...

  9. 模拟http或https请求,实现ssl下的bugzilla登录、新增BUG,保持会话以及处理token

    1.增加相应httpclient 需要的jar包到工程,如果是maven工程请在pom.xml增加以下配置即可: <dependency> <groupId>org.apach ...

  10. Qemu+gdb跟踪内核源码

    1.编译安装Qemu Qemu源码下载地址:http://wiki.qemu.org/Download linux下可以直接用wget下载: wget http://wiki.qemu.org/dow ...