1. 程式人生 > 其它 >基本語法和表示式

基本語法和表示式

JavaScript 行為層,實現互動效果,資料收發,表單驗證。 布萊登艾奇發明,類C語言。處理介面。ECMA規範了JavaScript的標準,即ECMAScript。

JavaScript :語言核心,BOM,DOM。

JavaScript的書寫位置:

  • 在<body>中<script>標籤對中。
  • 建立.js檔案,在<body>中<script src="~.js">標籤對中。

輸出語句:

  • alert( );   彈出警告框。輸出字串需加 ' '。
  • console.log( ) 控制檯輸出。

報錯處理:

  • invalid or unexpected token  無效或錯誤的符號
  • ~ is not defined 沒有定義該變數,或是字串沒有加 ' ',拼寫錯誤。

REPL環境:read eval print loop. 控制檯是REPL環境。

變數:

  • 命名規則:字母、數字、下劃線、$,不能以數字開頭 。大小寫敏感。建議駝峰命名法,例mathTest。
  • 變數的預設值undefined
  • 定義:var a;     var  a=0, b=3;
  • 變數宣告提升:在執行所有程式碼前,JS有預解析階段,會預讀所有變數定義,即可以提前使用一個稍後宣告的變數,但只提升定義,不提升值。

-----------------------------------------------------------------------------------------------------------------------------------------------------

兩大資料型別:

  • 基本資料:Number、String、Boolean、Undefined、Null
  • 複雜資料型別

typeof運算子:檢測值或變數的型別。 typeof 123 -----> number   

Number數字型別:

  • 不分浮點、正反。
  • 科學計數法: 3e8 即3*10的8次方
  • 二進位制0b開頭  八進位制0開頭  十六進位制0x開頭
  • NaN是一個數字型別的值,表示不是一個數字。不自等。例0/0 ------>NaN

String字串型別:

  • 使用 + 實現字串拼接
  • .length屬性表示字串長度
  • charAt(0)方法得到指定位置的字元,排序從0開始。 'fhw'.charAt(0)---->f
  • substring(a,b)方法得到從a開始到b處(不包含b處)的子串。 省略b即輸出從a處開始結束。可大數在前。
  • substr(a,b),從a開始長度為b的字串。a可以是負數,即從倒數位置開始。
  • slice(a,b)與substring()相似,但引數可以為負數,a不能比b大。
  • toUpperCase()轉為大寫,toLowerCase()轉為小寫。
  • indexOf('a')返回字元在字串中首次出現的位置,若無返回-1.

null型別:typeof null ----->object

資料型別準換:

  • Number()轉換為數字,非純數字會轉為NaN。 Number(null)--->0       Number(true)---->1
  • parseInt() 轉為整數,自動截短第一個非數字字府  包括.      parseInt(true)---->NaN
  • parseFloat()將字串轉為浮點數
  • String() 轉為字串,非十進位制數將轉為十進位制的字串
  • toString()方法,轉為字串。  數字呼叫需要加()。      (6).toString   ------>" 6"

prompt()函式,彈出輸入框。

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------

表示式和運算子:

  • 算術運算子:+    -     *     /    %        隱式轉換的本質是Number()函式。          3 % 9 = 3    
  • 賦值運算子:a++ 先用再加     ++a 先加再用
  • 關係運算符: >   <   >=     <==     ==(會進行隱式轉換)      ===(判斷值和型別)    != (不相等)      !==(不全等)     undefined == null----->   true
  • 邏輯運算子:!  !!(可直接展示資料的布林值)    &&       ||           
    •  短路計算:&&前真返後值,前假返前值。  ||  前假返後值,前真返前值。   返回決定性的總結果。
    • 運算優先順序:非 > 與 > 或
  • 綜合運算順序: 非>數學>關係>邏輯

IEEE754算術標準會使一些小數運算丟失精度。可使用toFixed()方法保留小數位。

冪和開根號:Math.pow(2,3) 即2的3次方 ;     Math.sqrt(81) ----->9

取整:Math.ceil() 向上取整   ;   Math.floor()向下取整     Math.ceil(2.4)------>3

判斷值是否為NaN: isNaN()