欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網
          最全最豐富的資訊網站

          javascript弱類型什么意思

          在javascript中,弱類型是指數(shù)據類型可以被忽略,一個變量可以賦不同數(shù)據類型的值。javascript是一種弱類型語言,它允許變量類型的隱式轉換,允許強制類型轉換等,如字符串和數(shù)值可以自動轉化;而強類型語言一般不允許這么做。

          javascript弱類型什么意思

          本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

          強類型語言:

          強制數(shù)據類型定義的語言。也就是說,一旦一個變量被指定了某個數(shù)據類型,如果不經過強制轉換,那么它就永遠是這個數(shù)據類型了。舉個例子:如果你定義了一個整型變量a,那么程序根本不可能將a當作字符串類型處理。強類型定義語言是類型安全的語言。

          弱類型語言:

          數(shù)據類型可以被忽略的語言。它與強類型定義語言相反, 一個變量可以賦不同數(shù)據類型的值。

          弱類型語言允許變量類型的隱式轉換,允許強制類型轉換等,如字符串和數(shù)值可以自動轉化;而強類型語言一般不允許這么做。

          js弱類型的體現(xiàn)

          一般規(guī)律是,約束越強越不容易出錯,但編寫程序時也越麻煩。在JavaScript中,因為約束比較弱,所以容易出現(xiàn)這種錯誤:最簡單的例子:

           var a =200;  var b ="1";  var c= a + b;

          你可能期望c是201,但實際上它是"2001",這個錯誤在強類型語言中決不會出現(xiàn)。然而正是因為JavaScript沒有這些約束,所以可以很方便地拼接數(shù)字和字符串類型。

          再比如下面這個例子:

          var a = '11'; a = a - ''; alert(typeof a);// -->number

          “-”可以是一元運算符(取負),也可以是二元(減法運算)

          在循環(huán)語句中(if,while)中,一個Object對象可以隱式的轉換從BOOLEAN值。

          var obj = {name:'jack'} if(obj){     //do more }

          比較難以發(fā)現(xiàn)的是在alert()函數(shù)中。

          String.prototype.fn = function(){return this}; var a = 'hello'; alert(typeof a.fn()); //-->object alert(a.fn()); //-->hello

          我們知道this可以理解成當前類的實例對象,既然是對象那么typeof a.fn()自然返回是object了。

          關鍵是最后的alert(a.fn()),a.fn()返回的明明是對象,但卻隱式的轉換成了字符串“hello”顯示。

          贊(0)
          分享到: 更多 (0)
          網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號