TypeError:undefined不是一个对象(评估' messageParts [0] .toString')?

时间:2017-04-20 07:25:00

标签: javascript

我在控制台中有一个对象数组:

Object

    date: "2017-04-20T06:44:22Z"
    productId: "MYPROID"
    state: 3
    transactionId: "100004560029ghjg56"
    __proto__: —

我使用以下代码在控制台上打印:

inAppPurchase
  .restorePurchases()
  .then(function (data) {

    console.log(data);


    /*
      [{
        transactionId: ...
        productId: ...
        state: ...
        date: ...
      }]
    */
  })
  .catch(function (err) {
    console.log(err);
  });

我试图访问该数组中的transactionId所以我这样做了:

inAppPurchase
  .restorePurchases()
  .then(function (data) {


    console.log(data.transactionId);

    /*
      [{
        transactionId: ...
        productId: ...
        state: ...
        date: ...
      }]
    */
  })
  .catch(function (err) {
    console.log(err);
  });

但是在控制台中返回此错误:

TypeError: undefined is not an object (evaluating 'messageParts[0].toString')?

有人可以就此问题提出建议吗?

1 个答案:

答案 0 :(得分:1)

data是您提到的Array,由console.log打印。

您需要访问此数组的第一项:

console.log(data[0].transactionId);