js遍历数组输出问题

zaqxswcde1130 2014-08-26 02:44:03
现在我有一段js,具体代码如下
<script type="text/javascript">
var a1="23";var b1="23";
var a2="23";var b2="23";
var a3="23";var b3="23";
var a4="4";var b4="通话";
var a5="23";var b5="23";
var a6="23";var b6="23";
var a7="8";var b7="就绪";
var a8="23";var b8="23";
var a9="23";var b9="23";
var a10="22";var b10="示忙";
var a11="23";var b11="23";
var a12="21";var b12="外呼";
var a13="23";var b13="23";
var a14="23";var b14="23";
var a15="23";var b15="23";
var a16="4";var b16="通话";
var a17="23";var b17="23";
var a18="23";var b18="23";
var a19="23";var b19="23";
var a20="23";var b20="23";
var a21="8";var b21="就绪";
var TheArray = [[a1,b1],[a2,b2],[a3,b3],[a4,b4],[a5,b5],[a6,b6],[a7,b7],[a8,b8],[a9,b9],[a10,b10],[a11,b11],[a12,b12],[a13,b13],[a14,b14],[a15,b15],[a16,b16],[a17,b17],[a18,b18],[a19,b19],[a20,b20],[a21,b21]];
</script>

我现在希望能够得到这个二维数组TheArray 中前面a不为23的时候b的值,同时只要前4个。然后这4个值组成一个新的变量c,
c的格式为c=z+""+x+""+v+""+n;(其中z、x、v、n代表的是前4个a不为23的时候b的值)。

希望给出具体实现代码
...全文
246 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
scscms太阳光 2014-08-28
  • 打赏
  • 举报
回复
    function get_b(arr){
        var temp = [],b = TheArray.length;
        for(var i= 0,l = arr.length;i<l;i++){
            var t = "";
            for(var a = 0;a<b;a++){
                if(TheArray[a][0]==arr[i]){
                    t = TheArray[a][1];
                    break;
                }
            }
            temp.push(t);
        }
        return temp.join(",");
    }
    alert(get_b([4,8,21]));//传入任意个数
scscms太阳光 2014-08-27
  • 打赏
  • 举报
回复
比如:通话+""+就绪+""+示忙+""+外呼 要怎么组合?
zaqxswcde1130 2014-08-27
  • 打赏
  • 举报
回复
各位大哥,我想问一下,如果我想把根据条件得到的TheArray[i][1]的值分别赋值个a、b、c、d,然后再用这些abcd去组合,怎么办
zaqxswcde1130 2014-08-27
  • 打赏
  • 举报
回复
各位大哥,我想问一下,如果我想取得的值,a为4的时候b在最前面,然后是a为8的时候b的值,最后是a为21的时候b的值
BeautyMyth 2014-08-26
  • 打赏
  • 举报
回复
引用 1 楼 xzy21com 的回复:
    var arr = [];
    for(var i= 0,l=TheArray.length;i<l;i++){
        if(arr.length<4){
            TheArray[i][0]!=23 && arr.push(TheArray[i][0]);
        }else{
            break;
        }
    }
    var c = arr.join('+""+');
    console.log(c);
TheArray[i][0]!=23 && arr.push(TheArray[i][1]); //这里改成1就好了
xuzuning 2014-08-26
  • 打赏
  • 举报
回复
r = [];
for(i=0; i<TheArray.length && r.length<4; i++) {
  if(TheArray[i][0] != 23) r.push(TheArray[i][1]);
}
c = r.join(' ');
alert(c);
zaqxswcde1130 2014-08-26
  • 打赏
  • 举报
回复
xzy21com大哥,我希望得到的值是b的值,不是 4+""+8+""+22+""+21,而是 通话+""+就绪+""+示忙+""+外呼
scscms太阳光 2014-08-26
  • 打赏
  • 举报
回复
    var arr = [];
    for(var i= 0,l=TheArray.length;i<l;i++){
        if(arr.length<4){
            TheArray[i][0]!=23 && arr.push(TheArray[i][0]);
        }else{
            break;
        }
    }
    var c = arr.join('+""+');
    console.log(c);

87,916

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧