我想通过使用for循环访问数据库中的某些记录来填充数组,然后将某些数据库字段的内容与文本组合以创建每个数组元素。这是我有:javascript array.push里面for循环 - 结果不是数组?
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',mythumbnail:'imagefile1tnlink',mytntxt:'thumbtxt1',myresource:'imagefile1link'},{ mytitle: '标题2',mythumbnail: 'imagefile2tnlink',mytntxt: 'thumbtxt2',myresource: 'imagefile2link'}]
,我应该得到这个:
[目标对象]
,如果它是真的是一个数组(对吗?)。
我在Application Craft中使用它,并且phsw数组是用服务器端javascript创建的,然后被传递给应用程序端的回调函数,但是当它回到应用程序端时,我不能使用它来填充小部件,因为它不是一个真正的数组。我如何确保phsw是一个数组?
是的,我确定这段代码并不是最干净或最有效的方式;我的(相当生疏的)经验是在PHP和MySQL中,而不是JavaScript,所以我总是乐于提供更好的方式来做事情的建议!
如果它是一个数组,那么类型将是'[object Array]'。 – elclanrs 2013-04-21 20:02:45