Javascript學習——引入方式,變數定義
1:html中使用js的兩種方式(內聯方式)
(1)使用javascript:字首執行js程式碼,例如:<a href="javascript:alert('執行js');">javascript字首執行js</a>
(2)使用<script/>方式引入,例如:<script type="text/javascript" >alert ("直接執行js");</scirpt>
2:html引入js檔案方式
<script type="text/javascript" src="test.js"/>,src指定js所在檔案的url,可以寫絕對路徑,也可以寫相對路徑。
3:js的資料型別和變數注意事項
(1)js中定義變數有隱式定義,顯示定義
例如: 隱式:a="hello"; alert(a);
顯示:var a="hello"; alert(a); 顯示宣告方式都採用var關鍵字宣告,可以無初始值;js中的變數區分大小寫,a和A表示 不同的變數;可以一次性宣告多個變數,例如:var a,b,c; var a, b=2,c=3;
(2)型別轉換
js支援自動型別轉換,例如 : var a="3.22"; var b=a-2; var c=a+2; 輸出結果: b=1.22, c=3.222
a變數是字串(用雙引號括起來),a和數值執行減法,a自動轉換為數值型別。但是執行+,因為字串可用加號作為連 接運算子,所以系統自動將數值轉換為字串。 如果想要執行算術的+,可以使用函式 parseFloat(a),將a轉換為float型別進 行計算。
toString(b),將布林值,數值等轉換為字串,
parseInt()將字串,布林值,字串轉換為整數
(3)變數
全域性變數和區域性變數。定義在函式外的為全域性,函式內為區域性
例如:
var test ="全域性變數";
function check(){
var test ="區域性變數";
alert(test);
}
此時輸出區域性變數,區域性變數會覆蓋同名的全域性變數。
注意這種情況:
var test ="全域性變數";
function check(){
alert(test);
var test ="區域性變數";
alert(test);
}
此時輸出:undifined,區域性變數。因為區域性變數在整個check函式內有效,第一次alert是test無值,所以undifined。
定義變數用var和不用var的區別:
如果使用var定義,程式會強制定義一個新變數;不使用var,系統會優先在當前上下文中搜索是否存在該變數。只 有該變數不存在的前提下才建立一個新變數。上述例子存在test變數,但執行到第一個alert時還沒被賦值,所以輸出
undifined。