函数提升的疑惑

functiontext(){
conssole.log(1)
}
console.log(text());会打印出2,为什么不是1
functiontext(){
conssole.log(2)
}
Cats萌萌
浏览 411回答 2
2回答

郎朗坤

打出来的是2和undefined把2是第二个text()执行;undefined是因为text()没有返回值函数提升,这段代码等价于:functiontext(){console.log(1);}functiontext(){console.log(2);}console.log(text());函数按顺序进行提升,后者覆盖了前者

慕虎7371278

额你既然都说了是函数提升了所以会打印出2。。js的函数声明方式会自动提升,你上面的写法其实就是functiontext(){console.log(1)}functiontext(){console.log(2)}console.log(text())
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript