function text () {
conssole.log(1)
}
console.log(text());会打印出2,为什么不是1
function text () {
conssole.log(2)
}
function text () {
conssole.log(1)
}
console.log(text());会打印出2,为什么不是1
function text () {
conssole.log(2)
}
额 你既然都说了是函数提升了 所以会打印出2。。
js的函数声明方式会自动提升,你上面的写法其实就是
function text(){
console.log(1)
}
function text(){
console.log(2)
}
console.log(text())
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
打出来的是 2 和 undefined 把
2 是 第二个text()执行;
undefined 是因为 text()没有返回值
函数提升,这段代码等价于:
函数按顺序进行提升,后者覆盖了前者