javascript的基本類型剖析:

來源:互聯網
上載者:User

javascript的基本類型剖析:

javascript的基礎資料型別 (Elementary Data Type)包括 string,number,boolean,function,object,undified主要的6的基礎資料型別 (Elementary Data Type)

這篇文章就主要介紹一下這六種基礎資料型別 (Elementary Data Type)的主要方法和使用

1 字元類型string常用的方法有
parseInt(str1) 不是字元類型的方法
substring(3,5) 字元截取
indexOf("h"),lastIndexOf("h") 索引尋找
toUpperCase() 大小寫轉換函式
 var str="abc"; //最常用的字元變數賦值 類似於 var str=new String("abc")   //常用方法   //1 把一個字元轉換為 字數,比如 把 “1234” 轉換為 數實值型別的整數    var str1="1234"    //這裡需要注意的是parseInt並不是string類型的方法,而是window對象的方法     console.info(parseInt(str1))            var str2="heshengjun123test"    // 2 把一個字串進行截取  比如 把  var str2="heshengjun123test"    //截取 3,5 之間的字元    //需要注意的是 字元、數組的下標都是從0 開始計算     console.info(str2.substring(3,5)) //包括第三個字元,不包括第五個字元     //尋找字元第一次的位置,如果找不到則返回-1     console.info(str2.indexOf("h")) //可以傳一個字元,也可以傳入字串      //從字元後面開始尋找字元第一次的位置,如果找不到則返回-1     console.info(str2.lastIndexOf("h"))  //     //字串串連     console.info(str2.concat("haoren")) //把兩個字串串連起來返回 等效於 str2+"haoren"     //大小寫轉換函式     console.info(str2.toUpperCase())      

2 數實值型別 number幾個特別的值 NaN,Infinity,-Infinity
對於NaN和其他資料進行計算返回的是 NaN
    //定義數值     var num=123; //等效於new Number(123)     // 1/0 不會報錯,會返回一個無窮大 Infinity  -1/0 返回一個無窮小 -Infinity     console.info(1/0)     console.info(-1/0)     //兩個數整數相除可能返回一個小數,這點和java等進階語言一樣     console.info(4/3) //返回 1.3333333333333333          console.info(typeof NaN) //NaN是一個number的值,表示不是一個數(not a number)     //比如parseInt("abc")就返回NaN     console.info(parseInt("abc"))          console.info(.6) //表示一個數0.6      //NaN和其他資料計算返回一個NaN     console.info(NaN-199);


3 布爾類型 boolean只有兩個值:true,false
對於字元,數值可以轉成為boolean中的true或者false
字元可以轉換為boolean類型,一般情況為true,Null 字元為false
數字轉換為boolean類型,一般情況為true,0 為false
對於對象也可以轉換為boolean類型,其中null對象轉換為false
對於一般的類型都可以使用兩個!轉換為boolean類型

    //定義一個布爾類型變數 只有兩個值true false     var bool=true; //等價於new Boolean(true)     console.info(bool.toSource())     //字元可以轉換為boolean類型,一般情況為true,Null 字元為false     if("abc"){     console.info("字元可以轉換為boolean類型,一般情況為true,Null 字元為false")     }     //數字轉換為boolean類型,一般情況為true,0,NaN 為false     if(!NaN){     console.info("數字轉換為boolean類型,一般情況為true,0 為false")     }     //對於一般的類型都可以使用兩個!轉換為boolean類型     //對於對象也可以轉換為boolean類型     if(!null){     console.info("對象轉換為boolean ")     }
4 function類型更多詳細介紹請參考下一篇關於函數的專題
函數有三種定義方式:function 語句、 函數直接量、Function建構函式
    //定義、聲明一個函數     var fun1=function(){console.info("這是一個函數")          }          //執行一個函數     fun1();     console.info(fun1.length) //返回定義函數的參數個數     console.info(fun1.arguments) //arguments這個變數需要在定義函數中使用,可以擷取實際的參數個數     //對於函數的call()方法和apply()方法,下節詳細介紹,主要是改變函數的範圍     console.info(fun1.call())     //toSource方法不一定有,Firefox瀏覽器支援 返回函數的定義     console.info(fun1.toSource())          //定義一個使用arguments的函數      //對於有傳回值的函數,傳回值運算式需要分號結尾,並且放到最後     function fun2(x,y){     //實際參數的個數     alert(arguments.length)     //具體的參數值     alert(arguments[0])     }     //執行函數     fun2(1,2,3,4);
5 object對象這裡是指具體的執行個體對象,不是類的概念
對象的簡單表示 {'name':'zhangsan','age':18}
propertyIsEnumerable 屬性判斷, 可以通過for..in迴圈出來
hasOwnProperty 自己的屬性,不是原型的屬性
   //定義一個對象     var obj={'name':"zhangsan",'age':18}        //每個對象都有的一個變數     obj.prototype=123      //建構函式     console.info(obj.constructor())     //判斷是否是自己的屬性 返回true false     console.info(obj.hasOwnProperty('name'))     //返回這個對象的值     console.info(obj.valueOf())     //propertyIsEnumerable 判斷一個對象的不是原型的屬性     // 可以通過for..in迴圈出來     console.info(obj.propertyIsEnumerable("name"))     for(var i in obj){     console.info(i)     }
6 undified類型變數聲明了,但是並沒有被賦值 其實也等同於Null
   var a;     //只有聲明,沒有賦值,值為undefined     console.info(a)      //undefined 類型     console.info(typeof undefined)     //兩個值相等     console.info(undefined==null)






聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.