首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Javascript将[对象对象]输出到textbox (适用于控制台,而不是textbox)

Javascript将[对象对象]输出到textbox (适用于控制台,而不是textbox)
EN

Stack Overflow用户
提问于 2018-08-16 11:33:49
回答 3查看 835关注 0票数 0

出于某种原因,当我输出到文本框时,它会写入Object object

下面是我的代码,尽管它是一个数组。

这不是重复的问题,因为在console.log中,它显示所有抓取的数据的数组,但当将这些数据放入文本框中时,它只显示对象对象

代码语言:javascript
代码运行次数:0
运行
复制
const request = require('request');
const cheerio = require('cheerio');

var options = {
  headers: {
    'user-agent': 'request'
  }
};

function somefunction() {
  request('https://kith.com/collections/footwear/products/jbaq4160-140', options, (error, response, html) => {

    if (!error && response.statusCode == 200) {
      const $ = cheerio.load(html);

      var output = $('form[action="/cart/add"] select#productSelect > option').map((i, elem) => ({
        size: $(elem).text(),
        val: $(elem).attr('value')
      })).get().reduce((acc, cur, i, arr) => {
        arr.obj = arr.obj || {};
        arr.obj[cur.size] = cur.val;
        return arr.obj
      }, {});

      document.querySelector('#out').innerHTML = output;
      console.log(output);
      console.log('done');
    }
  });
}

在文本框中,它只输出对象对象,不知道从这里做什么。

EN

回答 3

Stack Overflow用户

发布于 2018-08-16 11:35:25

您必须访问特定索引中的值。

尝试在您的浏览器开发人员控制台中放置一个‘re,并检查您正在记录的内容的索引。

然后访问它们。

票数 1
EN

Stack Overflow用户

发布于 2018-08-16 13:24:50

你先做map然后做reduce ..。reduce中的累加器是一个对象。然后你把一个对象放在一个文本框中,你得到的是[Object object]

看看你的reduce输出。[Object object]仅仅意味着Javascript将一个对象转换为一个字符串,结果就是你所看到的。

只需找出您想要在文本框中显示对象的哪个属性,并传递该属性而不是整个对象。

票数 0
EN

Stack Overflow用户

发布于 2020-10-02 15:28:18

如果要将其写为字符串,请使用document.querySelector('#out').innerHTML = JSON.stringify(output);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51869245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档