javascript:从promise then()函数内部传递值

javascript:从promise then()函数内部传递值,javascript,scope,promise,global-variables,Javascript,Scope,Promise,Global Variables,我在控制台中有一个promise/global对象,其输出如下: console.log(globalInfo); Promise __proto__:Promise [[PromiseStatus]]:"resolved" [[PromiseValue]]:globalInfo item1:"12345" item2:"something else" item3:"www.stackoverflow.com" _

我在控制台中有一个promise/global对象,其输出如下:

console.log(globalInfo);

Promise
__proto__:Promise
    [[PromiseStatus]]:"resolved"
    [[PromiseValue]]:globalInfo
        item1:"12345"
        item2:"something else"
        item3:"www.stackoverflow.com"
        __proto__:Object
并且我成功地提取了“item2”的值,如下所示:

但是,我无法将该变量/值传递到
then()
函数之外。对于第二个console.log(“newVar-outside”),没有任何输出到控制台


如何使变量“newVar”和“item2”的值在
then()
函数之外全局可用

异步代码是异步的。。。没有办法“捏造”代码使其像这样工作这看起来像是“如何返回异步回调”的重复?或者,逻辑应该存在于这个世界的内部。你不能在外面做。你基本上是在电话里点比萨饼,一打电话你就试着吃比萨饼。这不会发生,因为比萨饼需要制作和运送。这就是承诺所做的。它正在等门铃响。您需要等待,所以请分解代码,以便在比萨饼送达时调用它。
globalInfo.then(function(val) {
  newVar = val.item2;
  console.log('newVar inside: ' + newVar);
});
console.log('newVar outside: ' + newVar);