0
var name = new Array('freddy', 'mac', 'fanny', 'may');
var content = 'hi '.+name[i]+.'!';

$('div.class').each(function (i) {
this.html(content);
});

この JavaScript は hi freddy! を出力するはずです。こんにちはマック!こんにちはファニー!こんにちは!

しかし、まだ設定されていない配列を参照しているため、var にエラーがあります。

4

2 に答える 2

3

変数に値を代入していてcontent、変数を使用するときではなく、値を代入するときに値が評価されます。つまり、単純な値に別の値への参照を含めることはできません。

呼び出されたときに値を評価する関数にすることができます。

var name = new Array('freddy', 'mac', 'fanny', 'may');
var content = function(i) { return 'hi ' + name[i] + '!'};

$('div.class').each(function (i) {
  $(this).html(content(i));
});
于 2012-12-21T20:19:07.137 に答える
2

引用符を正しく並べ替えてiいませんでした。コンテンツが割り当てられた時点では存在しないため、とにかく機能しません。これを試してください:

var content = 'hi, {0}!';

$('div.class').each(function(i) {
    this.html(content.replace("{0}", name[i]));
});
于 2012-12-21T20:18:36.703 に答える