新手求助问题,为什么这个变量是同一个,而不被覆盖呢 财富值75
生活随笔
收集整理的這篇文章主要介紹了
新手求助问题,为什么这个变量是同一个,而不被覆盖呢 财富值75
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
樣式代碼在覆蓋之前已經被執行,所以兩種效果都存在。
你大概是沒有弄懂聲明前置, var elme = document.getElementById("message")這行代碼是拆分為var elme;elme=document.getElementById("message")這兩行代碼的,聲明前置是指我們能夠獲取聲明的指針名字,但是無法獲取它的賦值,對于瀏覽器來說都只是重復了相同的動作——var elme而已,也就是它知道了elme這個指針被聲明了(你可以理解為占位符),但不清楚這個指針指向哪里。獲取指針后,JS代碼是逐條依次執行的,先是被賦給message,(elme=document.getElementById("message")),執行了代碼后,又賦給了(elme=document.getElementById("message2")),然后再執行代碼。so當然兩個效果都會出現了,你可以測試下如果聲明函數和變量為一個指針名會出現什么情況,那大概就是你期望出現的覆蓋報錯。
用var聲明有個變量提升的問題。實際上確實是覆蓋的。上面的代碼等同于下面:
你大概是沒有弄懂聲明前置, var elme = document.getElementById("message")這行代碼是拆分為var elme;elme=document.getElementById("message")這兩行代碼的,聲明前置是指我們能夠獲取聲明的指針名字,但是無法獲取它的賦值,對于瀏覽器來說都只是重復了相同的動作——var elme而已,也就是它知道了elme這個指針被聲明了(你可以理解為占位符),但不清楚這個指針指向哪里。獲取指針后,JS代碼是逐條依次執行的,先是被賦給message,(elme=document.getElementById("message")),執行了代碼后,又賦給了(elme=document.getElementById("message2")),然后再執行代碼。so當然兩個效果都會出現了,你可以測試下如果聲明函數和變量為一個指針名會出現什么情況,那大概就是你期望出現的覆蓋報錯。
用var聲明有個變量提升的問題。實際上確實是覆蓋的。上面的代碼等同于下面:
總結
以上是生活随笔為你收集整理的新手求助问题,为什么这个变量是同一个,而不被覆盖呢 财富值75的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 柒个我剧情介绍
- 下一篇: 小米电视OLED55 安装第三方MX播放