javascript第二遍基礎學習筆記(待續...)

來源:互聯網
上載者:User

標籤:

1、相容xhtml方法:

<script>//<![CDATA[    ...    ...//]]></script>

 2、文檔模式:

IE5.5引入,最初包含2種:混雜和標準模式;後IE又提出了准標準模式;文檔開始未聲明文件類型,瀏覽器預設會開啟混雜模式。

3、noscript標籤用以提示瀏覽器不支援指令碼。

4、文法:

  4-1、區分大小寫:ECMAScript中的一切都是區分大小寫(如變數、函數名、操作符...)。

  4-2、標識符:

    第一個字元必須是字母、底線或美元符($);

    其餘字元可以是字元、底線、美元符或數字;

    (註:標識符的字母也可以包含擴充的ASCII或Unicode字母字元)

  4-3、注釋:單行和多行(//或/**/).

  4-4、strict 模式:ECMAScript5中引入了strict 模式的概念,通過在代碼塊的頂端加入 "use strict" 來啟動strict 模式。

  4-5、語句:其由分好結尾,但可省略,則其由解譯器確定語句結尾。(註:個人理解加分好是一種好的編程習慣)

5、變數:ECMAScript的變數是鬆散類型的,可以儲存任何類型的資料。(使用 var 定義申明變數)。

  注意:用 var 定義的變數將是其範圍中的局部變數

     不使用 var 定義的變數將會是全域變數(但不推薦這樣做),但在strict 模式下,這樣定義變數會報錯(ReferenceError);

6、資料類型:

  5種基本類型(Undefined,Null,Boolean,Number,String)和一個Object(對象)類型。

  可以使用typeof初步檢測資料類型。

Object.prototype.toString.call(null);   // [object Null]typeof null;    //object

   6-1、Undefined類型:

    其只有一個值,即undefined,定義未初始化的變數就是這個值。

    使用typeof檢測 未定義的變數定義但未初始化的變數 時,其結果都為undefined,但使用未定義的變數會報錯。

  6-2、Null類型:

    其也只有一個值,即null,從邏輯角度看,其值的表示是一個null 指標(這正是typeof檢測其實object的原因)。

    實際上undefined值是派生自null值,所以

console.log(undefined == null);    //trueconsole.log(undefined === null);    //false

  6-3、Boolean類型:

    其值有2個:true和false(區分大小寫);

    可以使用Boolean()來轉換其他類型的資料為Boolean的值,對應關係如:

類型            轉換為true          轉換為falseBoolean          true                 falseString         任何非Null 字元串       Null 字元串Number      任何非零數字值         0或NaNObject          任何對象                nullUndefined                           undefined

   6-4、Number類型:

    其使用IEEE754格式來表示;數字字面量格式:十進位、八進位(第一位必須是零,在strict 模式下無效)、十六進位(前2位必須是0x(零));

    6-4.1、浮點數:

      其小數點前可以沒整數,但小數點後必須有;

      其最高精確度是17位小數,所以其計算會有舍入誤差,如:

console.log(0.1+0.2==0.3);  //false 

    6-4.2、數值範圍:

      最大值(Number.MAX_VALUE)和最小值(Number.MIN_VALUE);正無窮(Infinity)和負無窮(-Infinity);

      可以使用  isFinite()  函數檢測數值是否是有窮的,返回true表示介於最小和最大之間;

    6-4.3、NaN:

      即非數值(not a number)是一個特殊的數值;其包含2個特點:任何涉及NaN的操作返回都是NaN和其與任何(包括自己)不相等 console.log(NaN==NaN); //false ;

    6-4.3、數值轉換:

      有3個方法:Number()、parseInt()和parseFloat();第一個適合任何類型,後面2個轉換字串類型;

Number的規則:  1、Boolean類型的:true -> 1;false -> 0;  2、null -> 0;  3、undefined -> NaN;  4、字串類型的:      只包含數字(包括加號或減號),轉換為十進位數(會忽略前置字元為零);      有效浮點格式(會忽略前置字元為零);      有效十六進位格式(如0xf);      Null 字元串 -> 0;      另外的都是 NaN;  5、對象的先valueOf,如果為NaN再使用toString;
parseInt()和parseFloat()則是儘可能的將字串轉化為數值(會忽略字串前面的空格,直到找到第一個非空白字元);
parseInt()在ECMAScript3和5中對八進位字面量的解析會有分歧
var num = parseInt("070"); //3中認為其是八進位,轉換為十進位就是56,5中則是0(八進位0的前置無效)
(註:parseFloat()會忽略前置字元為零)
為此parseInt()提供第二個參數指定轉換時的基數。

   6-5、String類型:

    其由零或多個16位Unicode字元組成;

    其還包含了特殊的字元字面量,也叫逸出字元;

    特點,其是不可變的;

    類型轉換:toString()和String();

 

javascript第二遍基礎學習筆記(待續...)

聯繫我們

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