在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