0

我试图通过使用 for 循环访问数据库中的某些记录来填充数组,然后将某些 DB 字段的内容与文本结合起来以创建每个数组元素。这是我所拥有的:

var numbers = [7,8];
var phsw = [];
for (var i=0,len=numbers.length;i<len;i++) {
    selectObj = cObj.select().from("wp_posts").where('ID=?', numbers[i]);
    result1 = cObj.exec(selectObj);
    var resource = result1[0].guid;
    var title = result1[0].post_title;
    var tnTxt = result1[0].post_title;
    var tn = resource.replace(/\.jpg/,"-150x150.jpg");
    phsw.push({mytitle:'" + title + "', mythumbnail:'" + tn + "', mytntxt:'" + tnTxt + "', myresource:'" + resource +"'});
    }

这创建了我认为的数组,但它显然不是真正的数组。当我使用 console.log(phsw) 查看其中的内容时,我得到了这个:

[{mytitle:'title',mytntxt:'imagefile1tnlink',mytntxt:'thumbtxt1',myresource:'imagefile1link'},{mytitle:'title2',mythumbnail:'imagefile2tnlink',mytntxt:'thumbtxt2',myresource:'imagefile2link '}]

我应该在哪里得到这个:

[对象对象]

如果它真的是一个数组(对吗??)。

我在 Application Craft 中使用它,并且 phsw 数组是使用服务器端 javascript 创建的,然后被传递给应用程序端的回调,但是当它返回到应用程序端时,我无法使用它来填充一个小部件,因为它不是真正的数组。如何确保 phsw 是一个数组?

是的,我确信这段代码不是最干净或最有效的方法;我(相当生疏)的经验是使用 PHP 和 MySQL 而不是 javascript,所以我总是乐于接受更好的做事方法的建议!

4

1 回答 1

0

没有一切都是正确的。它实际上是一个恰好包含 2 个对象的数组。

您应该得到 [object Object] 的期望是错误的。

于 2013-04-21T19:56:58.897 回答