程式設計之道,程式員不僅僅要精通一門語言,而是要多學習幾門。
第一課
1:javascript的主要特點
解釋型:不需要編譯,浏覽器直接解釋執行
基于對象:我們可以直接使用JS已經建立的對象
事件驅動:可以對以事件驅動的方式相應用戶端的輸入,無須經過伺服器端程式
安全性:不允許通路本地硬碟,不能将資料寫入到伺服器上
跨平台:js依賴浏覽器本身,與作業系統無關
第二課
如何在網頁中寫Javascript
1:在頁面中直接嵌入Javascript
<script language="javascript">
javascript程式
</script>
javascript可以插入在<head></head>标簽中間,
也可以放在<body></body>标簽中間
最常用放在<head></head>标簽之間
案例如下,将javascript代碼插入在<head></head>标簽中間。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>初學javascript</title>
<script language="javascript">
var now=new Date();//擷取Date對象的一個執行個體
var hour=now.getHours();//擷取小時數
var min=now.getMinutes();//擷取分鐘數
alert("目前時間"+hour+":"+min+"\n歡迎通路檸檬學院http://www.bjlemon.com/");
</script>
</head>
<body>
</body>
</html>
案例運作結果如下
案例2代碼如下
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>我的年月日</title>
<script language="javascript">
var now=new Date();//擷取日期對象
var year=now.getYear()+1900;//獲得年,在js中年份需要加1900才可以顯示此時此刻的年份
var month=now.getMonth()+1;//獲得月份,月份是0-11,是以在js中需要加1
var date=now.getDate();//獲得日
var day=now.getDay();//獲得星期幾
var day_week=new Array("禮拜日","禮拜一","禮拜二","禮拜三","禮拜四","禮拜五","禮拜六");
var week=day_week[day];
var time="目前時間:"+year+"年"+month+"月"+date+"日"+week;
alert(time);
</script>
</head>
<body></body>
</html>
案例2運作結果如下
2:引用外部的Javascript
如果腳本比較複雜或者是同一段代碼被很多頁面所使用,則可以将這些腳本代碼放置在一個單獨的檔案中,該檔案的擴充名是.js,然後再需要使用該代碼的web頁面中連結該javascript檔案即可
<script language="javascript" src="*.js">
</script>
(建議)以上代碼一般寫在<head></head>中間比較好
在.js字尾的檔案中,不需要使用<script></script>标簽對括起來
<body οnlοad="getDate()">表示的是加載頁面時調用getDate()方法getdate()是定義在.js字尾的檔案中的方法
此案例字尾是.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>引用外部的js</title>
<script language="javascript" src="js1.js">
</script>
</head>
<body οnlοad="getdate()">
</body>
</html>
此案例字尾是.js
function getdate(){
var now=new Date();//擷取日期對象
var year=now.getYear()+1900;//獲得年,在js中年份需要加1900才可以顯示此時此刻的年份
var month=now.getMonth()+1;//獲得月份,月份是0-11,是以在js中需要加1
var date=now.getDate();//獲得日
var day=now.getDay();//獲得星期幾
var day_week=new Array("禮拜日","禮拜一","禮拜二","禮拜三","禮拜四","禮拜五","禮拜六");
var week=day_week[day];
var time="目前時間:"+year+"年"+month+"月"+date+"日"+week;
alert(time);
}
綜合上面兩個案例的運作結果是
第三課
javascript的文法
1:javascript的文法
1.1:js的變量區分大小寫
usename,useName這是兩個不同的變量
1.2:每行結尾的分号可有可無,如果語句的結束沒有分号,那麼js
會自動将這行代碼的結尾作為語句的結尾
alert("hello world");
alert("hello world")
1.3:變量是弱類型
定義變量時隻使用var運算符
例如:var usename="biexiansheng";
var age=22;
1.4:使用大括号标簽代碼塊
{ //代碼}被封裝在大括号内的語句按照順序執行
1.5:注釋
1.5.1:單行注釋 //
單行注釋使用雙斜線"//"開頭,在"//"後面的文字即為注釋内容
注釋的内容在代碼執行過程中不起作用。
var now=new Date();//擷取日期對象
1.5.2:多行注釋 /**/
多行注釋以/*開頭,以*/結尾,在兩者之間的内容為注釋内容
在代碼執行過程中不起任何作用。
/*
*功能:擷取目前日期
*作者:biexiansheng
*/
function getClock(){
//内容
}
第四課
javascript的資料類型(不管javascript有多少種資料類型,聲明的時候隻可以使用var來聲明)
1:數值型
整形:123 //十進制
0123 //八進制,以0開頭
0x123 //十六進制 ,以0x開頭(是零不是o)
浮點型:整數部分加小數部分,隻能以十進制表示,不過可以使用科學記數法
3.1415926 //标準形式的浮點數
3.14E9 //采用科學計數法來表示,代表的是3.14乘以10的9次方
2:字元型
字元型資料是使用單引号或者多引号括起來的一個或者多個字元
例如:'a' 'hello world'
"a" "hello world"
javascript中無char資料類型
如果要表示單個字元,必須要使用長度為1的字元串
單引号包含雙引号 '"hello"'
雙引号包含單引号 "'world'"
3:布爾型
布爾型資料隻有true或者false,在js中也可以使用整數0代表false,使用非0的整數代表true
4:轉義字元
以反斜杠開頭的不可顯示的特殊字元通常稱為控制字元,也被稱為轉義字元
\b倒退 \n換行 \f換頁 \tTab符 \'單引号 \" 雙引号 \\反斜杠
5:空值
null,用于定義空的或者不存在的引用
例如 var a=null;
6:未定義值
已經聲明但是沒有指派的變量
var a;
alert(a);
彈出undefined是關鍵字,用來代表未定義值
7:Array型
數組類型,數組是包含基本群組合資料的序列,在javascript腳本語言中
每一種資料類型對應一種對象,資料本質上即為Array對象。
var score=[45,56,45,78,78,65];
由于數組本質上為Array對象,則可用運算符new來建立新的數組,如
var score=new Array(45,65,78,8,45);
通路數組中特定元素可通過該元素的索引位置index來實作,如下面語句聲明
變量傳回數組score中第4個元素
var m=score[3];
第五課
變量的定義與使用
1:變量的命名規則
變量名由字母,數字,下劃線組成,但是不能以數字開頭
不能使用javascript中的關鍵字
嚴格區分大小寫
例如 username username
2:變量的聲明
var variable
可以使用一個var聲明多個變量,比如
var now,year,month,date;
可以在聲明變量的同時對它進行指派,也就是初始化
var now="2016-8-11",year="2016",month="8",date="11";
如果隻是聲明了變量,沒有指派,那麼該變量的預設值就是undefined
javascript是弱類型,聲明的時候不需要指定變量的類型,變量的類型将根據變量的值來确定
全局變量的聲明:1:在函數體外的聲明都是全局變量,無論是否有var聲明
2:在函數體内部使用var聲明的變量是局部變量,不使用var聲明的變量是全局變量