javascript中,如何从外部获取内部匿名函数返回的值?

const dns=require('dns')

const dnslookup=(address)=>{

        var a;

        dns.resolve4(

                address,

                (err,addresses)=>{a=addresses}

        )

        return a

}

console.log(dnslookup('google.com'))

我想在调用dnslookup函数后得到addresses数组的值,传递给变量a。为何得到的结果总是undefined?


javascript@linux:~/test$ node dnslookup.js 

undefined


红糖糍粑
浏览 440回答 1
1回答

跃然一笑

因为dns.reolve4是个异步方法,return a的时候,它的callback还没有被执行,所以a还没有被赋值
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript