在HTML中使用javascript (js高階程式設計)

weixin_30312659發表於2020-04-04

在HTML中使用javascript

剛開始入門的時候覺得關於應用以及在html中只用javascript很簡單,不需要進行學習。我又開始重溫了一下紅寶書,覺得還是有必要進行學習的。這是一個筆記!

script 元素插入有多種方式

屬性 使用方式
async 延遲指令碼,在網頁完全解析後執行
charst 指定字符集,會忽略它的值
defer 會立即下載,但延遲進行執行
language 在大多數瀏覽器中已經廢棄
type 預設為txt/javascript
src 表示要執行的外部文檔案

javascript的程式碼是由上至下進行執行的

當我們需要在js程式碼中插入,script的時候,需要使用到轉義字元

<script>
    function fun(){
        alert("</script>")
    }
</script>

標籤的位置

js程式碼適用於放置於body下面。 因為瀏覽器是在遇到body才開始呈現頁面的。

嚴格模式

關於嚴格模式,我瞭解的不多。

嚴格模式定義了一種不同的解析與執行模型,一些不確定以及不安全的行為會進行報錯。

" use strict "

我需要在後面理解一下。

關鍵字的保留

不需要多記,例如:

while do break 之類的

變數

var 為定義一個變數,在執行過後會進行銷燬

具體有區域性變數和全域性變數,我想後面需要談一下自己的看法

資料型別

ECMAScipt 一共有5中簡單的資料型別:

使用typeof可能返回字串》

Undefined  未定義
Null       在   typeof 下不會出現   
Boolean     布林值
Number    不出現    
String     不出現
以及一種複雜型別 Object  如果這個值是物件或Null
function  返回函式

Undefined

只有一個值,使用var宣告變數但未對他進行初始化 ,則是Undefined

在為宣告的情況下會報錯,不會得到Undefined

var message;

alert(message == Undefined); -> (true)
alert(age); ->錯誤

Boolean

沒搞懂

Number

在算術計算是,所有八進位制和十六進位制表示的數值都將轉換為十六進位制

浮點數不會相等,不能機械能比較

NaN

即非數值

他定義了一個函式: isNaN -> 確定引數是否" 不是數值 "

他會嘗試轉換數值

例:

alert(isNaN(NaN));   //ture
alert(isNaN("10"));  //flase
alert(isNaN(bulue)); //不能轉換為數值

數值轉換 :

布林值 true 和 false 會分別轉換為1 和 0

null // 0; Undefind // NaN

一般前導零會忽略

var num1 = Number("hello") //NaN
var num2 = Number("") //0
var num2 = Number("001100") //11

解析

parseInt() 解析為整數 , 不提供八進位制的解析 , 但是可以指定解析

parseInt("1234NUM")  // 1234
parseInt("0XAF",16) //175

parseFloat() 解析為浮點數。

string型別

字元字面量 例如 \n

轉換字串

toString()
var age = 1;
var num = age.toString();  //"1"
var found = true;
var Found = found.toString(); // "true"

如果轉換的值是 Null或者 Undefind的情況下,可以使用String();

var value = ""; 
alert(String(value));  //"Undefind"

Object 型別

可以新增屬性或者自定義物件

var obj = new Object();

2017.10.12

轉載於:https://www.cnblogs.com/ar13/p/7657746.html

相關文章