JavaScript数组问题解决的多种方法

a1=['020','021',..........'025',..........];
a2=['上海','天津',..........'南京',..........];
length一样长,并且一一对应,怎么得到a1里面025对应的a2的南京?

自己想了个办法,但是用到了很多eval还有循环,感觉不是很好:

var a1=['020','021','025'],a2=['上海','天津','南京'];
var obj=function(){
for(var i=0;i

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

只要你确定了编号位置为三位,,
然后就ok!

var a1=['020','021','025','999'],a2=['上海','天津','南京','xpxp'];
alert(a2[(a1.join().indexOf('021'))/4]);

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

这个是数组的实现方法

var a1=['020','021','025'],a2=['上海','天津','南京'];
function getCity(n){
for(var i=0, l=a1.length; i

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

高手支招
如果我完成类似功能,我不会选择数组;

var pros = {
'021' : '上海',
'o22' : '北京',
'o23' : '深圳'
}
alert(pros['021'])

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • 有趣的javascript数组定义方法

    复制代码 代码如下: var Person = new Array(); Person[0] = 120;//定义人的体重 120斤 Person[1] = 21;//定义人的年龄 21岁 document.write("体重="+Person[0]+"年龄="+Person[1]);//输出人的体重和年龄 另一个有趣的定义数组的方法: 复制代码 代码如下: var Person = new Array(); Person["weight"] =

  • JavaScript数组应用 可依次读取的公告栏文字

    JavaScript数组文字 var i = 0; var TextNumber = -1; var TextInput = new Object(); var HelpText=""; var Text = ""; var Speed=50; var message=0; var addPadding="\r\n"; TextInput[0] = "我们庆祝日!"; TextInput[1] = "我们感谢广大朋友

  • javascript数组去掉重复

    总得来说面试的过程还是收获了不少,主要是认清自己的差距到底有多大,知识面到底有多窄,适当打击一下自信心还是有必要的.在这里做一次全面的总结,关于javascript的数组去重问题. 考虑一个问题由简到繁相对容易接受一点,首先假设要去重的数组是比较简单的,例如: 复制代码 代码如下: var arr=[1,2,2,3,'5',6,5,'',' '] 这个数组只包含了数字,字符串两种类型.我们给数组原型上面添加去重的方法distinct,用第一种很容易想到的方法来实现,当然也是很笨很直接的,把这个数

  • javascript数组的扩展实现代码集合

    Array.prototype.del = function(n) {     if (n<0) return this;     return this.slice(0,n).concat(this.slice(n+1,this.length)); } // 数组洗牌 Array.prototype.random = function() {     var nr=[], me=this, t;     while(me.length>0)     {         nr[nr.lengt

  • javascript数组去重3种方法的性能测试与比较

    昨天参加的一个前端面试,其中有一题数组去重,首先想到的是对象存键值的方法,代码如下 方法一:(简单存键值) 复制代码 代码如下: Array.prototype.distinct1 = function() { var i=0,tmp={},that=this.slice(0) this.length=0; for(;i<that.length;i++){ if(!(that[i] in tmp)){ this[this.length]=that[i]; tmp[that[i]]=true; }

  • JavaScript数组的快速克隆(slice()函数)和数组的排序、乱序和搜索(sort()函数)

    JavaScript中对变量的操作都是通过引用方式,而对数组也一样. 前两天想要对一个数组进行复制,一直苦于找不到办法(遍历的方法俺是绝对不采用的) 无意中拿起<JavaScript权威指南>翻了翻数组的操作函数,发现了slice()函数. slice()原来是用来截取数组中的一部分,这里我用它来复制数组,它的格式如下: array.slice(start, end) 如果省略了end参数,则切分的数组包含从start开始到数组结束的所有元素. 现在要用它来复制数组,就一行,呵呵: var n

  • javascript数组使用调用方法汇总

    JS数组方法汇总shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4,5]  b:1 unshift:将参数添加到原数组开头,并返回数组的长度 var a = [1,2,3,4,5]; var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5]  b:7 注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回

  • 给Javascript数组插入一条记录的代码

    <script type="text/javascript"> Array.prototype.insert = function(vVal,nIdx) {   var arrTemp = this; if(nIdx>arrTemp.length) nIdx=arrTemp.length; if(nIdx<-arrTemp.length) nIdx=0; if(nIdx<0) nIdx = arrTemp.length + nIdx; for(var ii

  • Javascript数组的排序 sort()方法和reverse()方法

    其中: 1.JavaScript的sort()中如果没有指定比较函数,则默认会按照字符的编码顺序进行升序排序.也就是说如果我们想要对数值进行排序得到的不一定是我们想要的结果. 2.Javascript的reverse()将数组中的元素逆序. 先看看上面的第一点,如果有一个数组arr=[1,6,3,7,9],使用arr.sort()后,数组的顺序为1,3,6,7,9,得到了我们想要的结果. 再看看下面的一个数组排序:arr=[3,1,16,34,30],如果执行arr.sort()后是不是还是会得

  • javascript数组的使用

    数组的定义: 方法1. 复制代码 代码如下: var mycars=new Array()mycars[0]="Saab"mycars[1]="Volvo"mycars[2]="BMW" 方法2. 定义和初始化一起: var mycars=new Array("Saab","Volvo","BMW") 或者另一种写法: var mycars=["Saab","

  • 有趣的JavaScript数组长度问题代码说明

    第一点: 复制代码 代码如下: var lennon=Array(); lennon["name"]="windy"; lennon["year"]="1989"; lennon["living"]=true; alert(lennon.length); 结果:lennon.length 为 0   原因: 用以下方式增加数组元素,将不改变数组的长度 arr["a"]=3;第二点: 复制

  • COM中获取JavaScript数组大小的代码

    IDispatch类型的指针,则表明该数组对象实际是一个JavaScript的内建数组对象,在JavaScript端,我们可以通过length属性来得到数组的大小,那么在此处,可以通过GetIDsOfNames函数和Invoke函数来获取数组长度,这样可以动态变量数组内容. 复制代码 代码如下: // 获取数组长度 BSTR bstrLength = L"length"; DISPID dispid; hr = lpDispatch->GetIDsOfNames(IID_NULL

  • 两种常用的javascript数组去重方法思路及代码

    第一种是比较常规的方法 思路: 1.构建一个新的数组存放结果 2.for循环中每次从原数组中取出一个元素,用indexOf查找新数组中是否有该元素 3.若没有,则存到结果数组中 复制代码 代码如下: Array.prototype.unique1 = function(){ var res = []; for(var i = 0; i < this.length; i++){ if(res.indexOf(this[i]) == -1){ res.push(this[i]); } } retur

  • 用Javascript数组处理多个字符串的连接问题

    复制代码 代码如下: var str = new Array(); str[0] = '<li id="domain-{0}">'.replace('{0}', 'domainid'); str[1] = 'domainname'; str[2] = '<input type="hidden" name="domainids" value="{0}">'.replace('{0}', 'domainid

  • javascript数组组合成字符串的脚本

    在某些程序中,你可能需要将数组组合成字符串,比如将var aArray = ["a","b","c"];处理成字符串的形式.这里有两种方法,当然如果你有更好的办法,别忘记留言给我. 第一种: aArray.toString() 第二种: aArray + "" 演示: js数组组合成字符串 var aArray = ["a","b","c"]; document.wr

随机推荐