📅  最后修改于: 2023-12-03 15:25:46.989000             🧑  作者: Mango
在程序开发中,我们经常需要从承诺(Promise)中获取数据类型。这在处理异步数据时非常有用。本文将介绍如何从承诺中获取类型。
我们可以使用 typeof
操作符来获取承诺返回值的类型。例如:
const promise = new Promise(resolve => resolve('Hello, world!'));
typeof promise.then(() => {}) // 'object'
返回值为 object
,这是因为 then
方法返回一个新的承诺。
要获取承诺返回值的类型,我们需要在 then
方法中使用回调函数:
const promise = new Promise(resolve => resolve('Hello, world!'));
promise.then(value => typeof value) // 'string'
在这个例子中,value
是承诺返回的字符串。typeof value
返回 'string'
。
要获取承诺返回值的复杂类型,我们可以使用 Object.prototype.toString
方法。例如:
const promise = new Promise(resolve => resolve({ name: 'Alice', age: 30 }));
promise.then(value => Object.prototype.toString.call(value)) // '[object Object]'
在这个例子中,承诺返回一个对象。Object.prototype.toString.call(value)
返回 [object Object]
。
从承诺中获取数据类型是非常有用的。我们可以使用 typeof
操作符来获取基本类型,使用 Object.prototype.toString
方法来获取复杂类型。这些工具可以帮助我们更好地处理异步数据。