學習javascript 的一點感想

原文: 學習javascript 的一點感想

//動態性是指,在一個Javascript對象中,要爲一個屬性賦值,咱們沒必要事先建立一個字段,只須要在使用的時候作賦值操做便可,以下例:
var obj=new object();
obj.name="myname";
obj.say=function(){
    alert("hello");
}
obj.say();
//Javascript是弱類型的,它的數據類型無需在聲明時指定,解釋器會根據上下文對變量進行實例化,好比:
var s="text";
alert(s);
s=12+5;
alert(s);
//js的數據類型:基礎數據類型(字符串,布爾值,數值性(浮點型,整型))和對象類型(對象,數組,函數)
    print(typeof obj);  
    print(typeof array);  
    print(typeof func);  
       
    //將打印出  
    object  
    object  
    function  

   //當使用str.length時,JavaScript會自動包裝一個臨時的String對象,內容爲str的內容,而後獲取該對象的length屬性,最後,這個臨時的對象將被釋放。

  //因爲JavaScript是弱類型的,因此JavaScript引擎須要根據上下文來「猜想」對象的類型,這就使得JavaScript的效率比編譯型的語言要差一些。
   

   //引用類型,如對象,數組和函數,因爲他的大小不受限制,故咱們經過對其引用來訪問它,引用自己就是個地址。即指向存儲複雜對象的位置。

//JavaScript自己是基於原型的,每一個對象都有一個prototype的屬性來,這個prototype自己也是一個對象,所以它自己也能夠有本身的原型,這樣就構成了一個鏈結構。

//解釋器傳遞給函數的是一個相似於數組的內部值,叫arguments,這個在函數對象生成的時候就被初始化了。好比咱們傳遞給adPrint一個參數的狀況下,其餘兩個參數分別爲undefined.這樣

//咱們能夠擴展JavaScript解釋器環境中內置的對象,這種方式的好處在於,擴展以後的對象能夠適用於其後的任意場景,而不用每次都顯式的聲明

//經過 new 操做符來做用與一個函數,實質上會發生這樣的動做:

首先,建立一個空對象,而後用函數的 apply 方法,將這個空對象傳入做爲 apply 的第一個參數,及上下文參數。這樣函數內部的 this 將會被這個空的對象所替代:

    <strong>var triangle = new Shape( "triangle" );  
    // 上一句至關於下面的代碼  
    var triangle = {};  
    Shape.apply(triangle, [ "triangle" ]);</strong>  javascript

相關文章
相關標籤/搜索