js记录数组如何查找

青云 2015-08-18 12:44:17

var arr_mate = new Array();
arr_mate[0] = {
code:"1001",
name:"ABC"
}
arr_mate[1] = {
code:"1002",
name:"DEF"
}

arr_mate[2] = {
code:"1003",
name:"ddd"
}
................
那么怎么实现,根据指定的 code 得到 name值;

比如写一个函数,实现: arr_mate.get_name("1001") ="ABC";
...全文
330 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
离子漂浮物 2015-08-22
  • 打赏
  • 举报
回复
引用 6 楼 daizhicun 的回复:
楼上的朋友,我也希望这样,不要做自定义函数, 直接获取,效率最高,方法最简单; 只是您的: 直接用object。 {"1001":"ABC","1002":"EFG"} 到底如何实现查找;
例如:

var a={"1001":"ABC","1002":"EFG"};
a['1001']=="ABC"
如果key不存在,返回的是null
青云 2015-08-22
  • 打赏
  • 举报
回复
楼上的朋友,我也希望这样,不要做自定义函数, 直接获取,效率最高,方法最简单; 只是您的: 直接用object。 {"1001":"ABC","1002":"EFG"} 到底如何实现查找;
szcszcss 2015-08-18
  • 打赏
  • 举报
回复
直接用object。 {"1001":"ABC","1002":"EFG"}
风中的少年 2015-08-18
  • 打赏
  • 举报
回复
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Jslet - Template</title> <script src="http://apps.bdimg.com/libs/jquery/1.6.4/jquery.min.js"></script> <script> var arr_mate = new Array(); arr_mate[0] = { code:"1001", name:"ABC" } arr_mate[1] = { code:"1002", name:"DEF" } arr_mate[2] = { code:"1003", name:"ddd" } function getName(code) { for (var i = 0; i<arr_mate.length; i++) { if (arr_mate[i].code == code) { return arr_mate[i].name; break; } } } $(function(){ alert(getName('1002')); }) </script> </head> <body> </body> </html>
hch126163 2015-08-18
  • 打赏
  • 举报
回复
循环 查找!
zpjshiwo77 2015-08-18
  • 打赏
  • 举报
回复
引用 1 楼 zpjshiwo77 的回复:
我是新人,可能方法比较蠢,但是好像也可以,但不知道语法上对不对,你看看思路吧。

function get_name(var x)
{
     var y=0;
     for(var i=0;i<arr_mate.length;i++ )
     {
         if(arr_mate[i].code==x)
         {
          y=arr_mate[i].name;
         }
     }
     return y;
}
如果y=0,则说明code不在该数组里面。
我发现我语法错了,function get_name(var x)应该写成function get_name(x)。以前写C++的时候,形参必须定义,所以就习惯了。
zpjshiwo77 2015-08-18
  • 打赏
  • 举报
回复
我是新人,可能方法比较蠢,但是好像也可以,但不知道语法上对不对,你看看思路吧。

function get_name(var x)
{
     var y=0;
     for(var i=0;i<arr_mate.length;i++ )
     {
         if(arr_mate[i].code==x)
         {
          y=arr_mate[i].name;
         }
     }
     return y;
}
如果y=0,则说明code不在该数组里面。

87,909

社区成员

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

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