首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在节点js中获取"name“的值

在节点js中获取"name“的值
EN

Stack Overflow用户
提问于 2016-12-22 14:20:14
回答 3查看 1.3K关注 0票数 2
代码语言:javascript
运行
复制
Category = collection.find({},{ name: true }).toArray();
console.log("Categories Found", Category);

输出:

代码语言:javascript
运行
复制
Promise { [ 
            { name: 'Agriculture' },
            { name: 'engineer' } 
        ] }

如何获得名称的值?(注:在节点JS工作)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-12-22 14:23:57

toArray是一个异步函数,它返回承诺。您可以通过两种方法中的一种获得您的类别:

承诺风格:

代码语言:javascript
运行
复制
collection.find({},{ name: true }).toArray()
    .then(categories => {
        console.log(categories);
    });

回调风格:

代码语言:javascript
运行
复制
collection.find({},{ name: true }).toArray((err, categories) => {
    console.log(categories);
});

当然,有一些错误处理是一个很好的实践:将.catch添加到允诺链中,或者检查err在回调中是否真实。

票数 3
EN

Stack Overflow用户

发布于 2016-12-22 14:26:43

由于您得到了一个承诺,您可以使用.then()获取结果,然后使用一个循环获得数据:)

代码语言:javascript
运行
复制
collection
    .find({}, { name: true })
    .toArray()
    .then(function(result) { 

        result.forEach(function(data) {

            console.log("name: %s", data.name); 

        });

    });

玩得开心:)

票数 3
EN

Stack Overflow用户

发布于 2016-12-22 14:32:44

要获取数组中的值,可以使用distinct()方法,如下所示:

代码语言:javascript
运行
复制
collection.distinct("name").then(function(categories) { 
    console.log("Categories Found", categories); 
    console.log("First Category", categories[0]); 
})

或将回调函数用作:

代码语言:javascript
运行
复制
collection.distinct("name", function(err, categories) { 
    if (err) throw err;
    console.log("Categories Found", categories); 
    console.log("First Category", categories[0]); 
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41285253

复制
相关文章

相似问题

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