假设我有以下工作代码:
const myPackage = require('myPackage');
myPackage.internal_func(parameter).then(console.log);
这将返回一个JSON,例如:
{
a: 'valA',
b: 'valB'
}
如果我只想将
a
的值分配给变量怎么办?我尝试了这个:
const myPackage = require('myPackage');
var data = myPackage.internal_func(parameter).a;
console.log(data);
不幸的是,这返回:
undefined
最佳答案
在您的示例中,internal_func
看起来返回了Promise,这就是为什么它没有a
属性的原因。
这里有一些选择:
// Async/await
(async function(){
const parameter = {}; //some param
const myPackage = require('myPackage');
const { a } = await myPackage.internal_func(parameter);
console.log(a);
})();
// Thenable
const parameter = {}; //some param
const myPackage = require('myPackage');
myPackage.internal_func(parameter).then(({a})=>{
// you can use variable a in the code below
console.log(a);
// some code...
});