在Javascript中访问对象数组(或数组数组)

Jac*_*ife 2 javascript arrays jquery object

在我的JavaScript中,我有两种方式存储数据

  • 作为数组的数组 data1[i++] = [id, url, val]

  • 作为对象的数组 data2[i++] = {id:id, url:url, val:val}

当我将两个数组输出到控制台时,我看到所有数据都是正确的.

接下来我想访问它们.对于我正在做的第一组数据:

  var total = data1.length;
      for (var j = 0; j < total; j++) {
        console.log(data1[j]);
      }
Run Code Online (Sandbox Code Playgroud)

然后是第二组

  var total = data2.length;
      for (var j = 0; j < total; j++) {
        console.log(data2[j].id + data2[j].gradient + data2[j].url);

      }
Run Code Online (Sandbox Code Playgroud)

但如果我想使用它们(来自对象的数据)

jQuery( "#' + data2[j].id + ' .banner-bg" ).css( "background-image",  data2[j].url );
Run Code Online (Sandbox Code Playgroud)

它会抛出一个错误

错误:语法错误或无法识别的表达式:#+ data [j] .id + .banner-bg

我犯了哪个错误?

Jos*_*eam 7

你只是错误地报出你的报价.做这个:

jQuery( '#' + data2[j].id + ' .banner-bg' ).css( "background-image",  data2[j].url );
Run Code Online (Sandbox Code Playgroud)