什麼是JavaScript
JavaScript是一種描述語言,基於對象和事件驅 動的腳本語言
JavaScript特點:
- 腳本語言(一種輕量級的編程語言)
- 一種解釋性語言(無需預編譯)
- 被設計爲向HTML頁面添加交互行爲
- 運行於客戶端
JavaScript的簡史:
-
95年LiveScript(Netscape公司)
-
Netscape將其更名爲JavaScript
-
微軟IE3.0並附帶JScript、CEnvi的ScriptEase以及 JavaScript三足鼎立
-
97年JavaScript1.1版本被ECMA(歐洲計算機製造商) 標準化爲ECMAScript的全新腳本語言
JavaScript與ECMAScript的關係:
ECMAScript是JavaScript的標準和基礎
JavaScript與JAVA的關係:
沒有關係,JavaScript和Java都與sun公司有合作,是借勢Java
JavaScript的組成
關於ECMAScript
1.ECMAScript定義了腳本語言的所有屬性、方法和對象
2.包括語法、類型、關鍵字、保留字、運算符、對象等
3.除了JavaScript外,同時也是Nombas的ScriptEase和 Flash腳本ActionScript的基礎
關於DOM
DOM(Document Object Model文檔對象模型)
1.HTML和XML的應用程序接口(API)
2.把整個頁面規劃爲層級式的節點結構
實例:
<html>
<head>
<title>Sample Page</title>
</head>
<body>
<p>Hello World!</p>
</body>
</html>
關於BOM
BOM(Browser Object Model瀏覽器對象模型)
可對瀏覽器窗口進行訪問和操作
1.彈出新的瀏覽器窗口
2.移動、關閉瀏覽器窗口及調節瀏覽器窗口大小
3.獲取用戶屏幕分辨率的屏幕對象
4.WEB瀏覽器詳細的定位對象
對象舉例
Window對象 /Navigator對象 /Screen對象 /History對象 /Location對象
JavaScript基本結構
先來看一個簡單的js案例:
<html>
<head>
<!-- 瀏覽器有自動糾錯功能,能正常顯示不表示你寫對了 -->
<!-- 大家規定,不想讓用戶看見的 寫在head中 想讓用戶看見的寫在body中 -->
<script type="text/javascript">
<!-- type屬性不是必須的,瀏覽器會自動解析爲javascript-->
<!-- 建議大家養成習慣,加上type屬性-->
document.write("你好,JavaScript!");
</script>
</head>
<body>
</body>
</html>
常用的三個彈框
alert()提示信息框
prompt()
confirm()確定則返回true,取消則返回false
<html>
<head>
<title>js支持的三種彈框,實現和用戶交互</title>
<script type="text/javascript">
<!-- 這是html註釋 -->
//這是js註釋
// 我們來了解第一種彈框 alert彈框
//alert("你好 alert"); //注意alert有一個特性!
// 瀏覽器處於阻塞狀態 代碼在alert這個位置停止並等待
// 第二個彈框叫做prompt框具有返回值,返回的是string數據類型
var userName = prompt("請輸入用戶名稱:",666); //接受2個參數,第一個是提示字符,第二個是輸入框默認的值
alert(typeof userName);
//confirm 確認框 返回的是布爾值的true或者false
var flag=confirm("確定提交嗎?");
alert(flag);
</script>
</head>
<body>
<h1>你好 html</h1>
</body>
</html>
JavaScript的變量聲明
//JS的變量聲明 ,是通過 var 語句來聲明的,無需指定數據類型
var num = 10 ;
var str = "JavaScript" ;
//當然也可聲明多個,之間用逗號隔開
var num =10 , str = "JavaScript";
//省略 var 語句,直接變量聲明
num = 100; //相當於window.num= 100; (不推薦)
num = 100;這種變量聲明的是全局變量
JS的數據類型
typeof運算符
typeof檢測變量的返回值,爲字符串類型
typeof運算符返回值如下:
JavaScript中的函數
一組可以隨時隨地運行的語句,將腳本編寫爲函數以避免頁面載入時執行該腳本 。分爲系統函數和自定義函數
系統函數
常用的系統函數如下:
自定義函數
語法:
function 函數名 ( 參數1,參數2,…. )
{
//函數代碼塊
} 或
var 函數名 = function (參數1,參數2,…. )
{
//函數代碼塊
}
事件
JavaScript偵測到的行爲
頁面中常用的事件:
練習:
製作留言板提交效果,點擊“提交”按鈕表單提交 ,提交前讓用戶確認,確認後提交 ,否則不提交
代碼:
<html>
<head>
<script type="text/javascript">
function aa(){
var input1 = document.getElementById("title");
var input2 = document.getElementById("context");
if(confirm("確定提交內容標題?")){
console.log(input1.value);
console.log(input2.value);
}
}
</script>
</head>
<body>
<label for="title">留言標題</label>
<input type="text" name="title" id="title" >
<br>
<label for="context">留言內容</label>
<textarea name="context" id="context" cols="30" rows="10"></textarea>
<br>
<input type="button" name="button" id="button" value="提交" onclick="aa();">
</body>
</html>