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', mythumbnail:'imagefile1tnlink', mytntxt:'thumbtxt1', myresource:'imagefile1link'},{mytitle:'title2', mythumbnail:'imagefile2tnlink', mytntxt:'thumbtxt2', myresource:'imagefile2link' '}]

私はこれを取得する必要があります:

[オブジェクト オブジェクト]

それが本当に配列だった場合 (右??)。

私はこれを Application Craft で使用しており、phsw 配列はサーバー側の JavaScript で作成され、アプリケーション側のコールバックに渡されていますが、アプリ側に戻ると、それを使用して入力することはできません実際には配列ではないため、ウィジェットです。phsw が配列であることを確認するにはどうすればよいですか?

そしてもちろん、このコードはこれを行うための最もクリーンで効率的な方法ではないと確信しています。私の (かなりさびた) 経験は、javascript ではなく PHP と MySQL にあるので、物事を行うためのより良い方法の提案を常に受け​​入れています!

4

1 に答える 1

0

いいえ、すべてが正しいです。実際には、ちょうど 2 つのオブジェクトを含む配列です。

[object Object] を取得する必要があるというあなたの期待は間違っています。

于 2013-04-21T19:56:58.897 に答える