JS入門(三)

來源:互聯網
上載者:User

標籤:

資料的類型轉換

之前提到過,js中資料類型分兩種,

  基礎資料型別 (Elementary Data Type)string  number   boolean  undefined  null   

  複雜資料類型 對象   Date   Array  function

  而在實際編程中,經常會與到資料類型轉換的問題,比如把字串類型的資料轉化成數字類型的,又或者是把數字類型的轉化成布爾類型的,那js中到底怎麼實現資料類型的轉換呢?

轉成number

  隱式轉換  +    -   *    /   %  ;值得注意的是,+在這裡是用做正負的作用,而且是放在要轉換的值得前面的。 

  強制轉換  使用外部的方法或是函數進行的資料轉換

  Number()    parseInt()     parseFloat()

  var a = "123";
  var b = true;
  console.log(Number(a)); // 123
  console.log(Number(true)); // 1
  console.log(Number(null)); // 0
  console.log(Number(undefined)); // NaN
  console.log(Number("123.456")); // 123.456
  console.log(Number(" ")); //0

  boolean類型的值轉換成Number類型true-->1    false-->0;

  unerfined-----> NaN;

  如果能將值轉換成數字,就轉換成對應的值,如果不能轉換,則報NaN.

  Number()函數的特點:

  a.如果轉換的內容可以轉成數字,那麼就直接返回這個內容對應的數字。

  b.將整體進行轉換,如果有一個不可以轉換那麼返回NaN.

  c.如果在內容中出現小數,那麼小數會保留,也會輸出小數。

  d.如果內容為空白(null),那麼轉換成0;

轉成string類型:

  隱式類型轉換:+“”  

  強制類型  toString()    String();

  萬物皆對象,JS中的對象幾乎都有toString();null,undefined是沒有toString()方法,如果要強制轉換的話,只能使用String();能用toString()轉換的對象,對string()都可以。

轉boolean類型

  隱式類型       !!

  強制類型       Boolean()

  資料類型轉boolean的時候,為false的情況:

  0, “”,null,undefined,NaN, 這些轉成boolean類型的時候都為false,其它的都為true;

函數:

  函數:其實就是一段代碼,一段可以在使用的時候執行,可以重複使用的代碼塊。它把可以重用的東西提取成函數,把不可重用的東西當成參數傳入函數。

函數的定義:

function 函數名(參數){

  函數體(都是可執行檔或是要執行的代碼);

}

  函數有三要素:函數名(函數的功能),參數,傳回值。

  首先來講講函數名,因為js對大小寫是很敏感的,所以在命名函數和調用函數的時候大小寫都要一直,否則的話就不能調用函數了。然後就是參數,也就是我們提供給函數的資料,函數中的參數可以是任意多個,也可以不寫參數,如果有兩個及以上參數的時候,參數與參數之間用半形的英文逗號隔開。最後,就是函數的傳回值。每個函數都是有傳回值的,如果在函數中沒有明確的傳回值的話,那麼函數就會返回underfined。

  函數調用的時候一般都用函數名加括弧的形式來調用。函數名();

  在函數中,還有形參跟實參的區別,形參就是在函數定義的時候,所傳入的參數,主要就是為了起佔位置的作用。而實參則是函數在調用的時候所傳入的參數值。定義好了函數之後,在函數調用的時候,會將函數的實參複製一份傳到函數定義時的形參裡面,會和之前的一一對應起來,如果實參和形參的個不一樣的時候,會先按之前的分配,也就是匹配形參中的前面幾個。所以實參和形參的個數是可以不一樣的。

  關於函數,還有些不得不提的就是他的範圍的問題。js編程環境的頂級範圍是window對象下的範圍,稱為全域範圍,全域範圍中的變數稱為全域變數。而js函數內的變數無法在函數外面訪問,在函數內卻可以訪問函數外的變數,函數內的變數稱為局部變數。

 

JS入門(三)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.