javascript数组查询

javascript array query

本文关键字:查询 数组 javascript      更新时间:2023-09-26

我试图循环并从该数组中获取名称的值,但无法。。对javascript 真的很失望

有人能帮助和指导我这样做吗?以及更复杂的数组。。我似乎找不到好的教程来展示这个的例子

谢谢,这是代码

    var object={name:'angelos',name:'nick',name:'maria'};
    var i;
    for (i = 0; i < object.length; i += 1) {
        document.writeln(object[name][i]);
    }

这是一个对象,而不是数组。你可以把它变成一个简单的数组:

var arr = ['angelos', 'nick', 'maria'];
for (var i = 0; i < arr.length; i++) {
    document.writeln(arr[i]);
}

或者,如果您想在数组中有对象(如果每个对象只有一个键,则不需要):

var arr = [{name: 'angelos'}, {name: 'nick'}, {name: 'maria'}];
for (var i = 0; i < arr.length; i++) {
    document.writeln(arr[i].name);
}

首先,您的对象有重复的键name。这是一个糟糕的代码,在严格模式下会引发错误。

我也会在这里使用for ... in循环或Array.forEach,因为实现所需效果所需的代码要少得多。

似乎你需要使用数组:

var arr = ["nick", "maria", "chaz"];
arr.forEach(function (name) {
    document.writeln(name);
});

您可以使用Array.forEach,它将每个索引传递给一个匿名函数。

或者,如果您希望每个人都是Object:

var people = [{name: 'chaz', title: 'mr'}, {name: 'nick', title: 'mr'}, {name: 'maria',title: 'ms'}];
for (i in people) {
    if (!people.hasOwnProperty(i)) { continue; }
    var person = people[i];
    document.writeln(person.name);
}

参考

  • 在此处查看Array.forEach
  • 关于for ... in循环的一个很好的参考

您可以将数据放在一个数组中,并用包含名称属性的对象(以及其他对象,例如地址,如果您愿意的话)填充

http://jsfiddle.net/5NK6x/

var obj=[{name:'angelos'}, {name:'nick'}, {name:'maria'}],
    i;
for (i = 0; i < obj.length; i += 1) {
    document.write(' ' + obj[i]['name']);
}​

首先,这是一个对象,而不是数组。您可能想要一个对象数组。我这么说是因为你有三把钥匙,都叫name。密钥必须是唯一的。像这样:

var people = [{name: 'angelos'}, {name:'nick'}, {name:'maria'}];

在这种情况下,你会像这样循环:

for (var i = 0; i < people.length; i++) {
    document.writeln(people[i].name);
}

示例:http://jsfiddle.net/lbstr/cMqaH/

这是数组和JSON的混合。如果你的数据看起来像这样:

var object = [{"name":"angelos"},{"name":"nick"},{"name":"maria"}];

你可以访问这样的元素:

for(var i=0,i<object.length,i++)
{
    alert(object[i].name);
 }