1.JavaScript
a.定義:JavaScript是腳本語言,是一種輕量級的編程語言
b.實現:①直接通過標簽里面的onXX屬性驅動js的執行
<input?type="button"?value="測試"?οnclick="alert(‘hello‘)">
②引入外部js文件——JavaScript File
<script?src="my.js"></script>
③可被放置在 HTML 頁面的 <body> 和 <head> 部分中
<script?type="text/javascript">alert("script");</script>
2.數據類型:
a.數據類型:字符串(String)、數字(Number)、布爾(Boolean)、數組(Array)、對象(Object)、Null、Undefined
var?num?=?1;var?str?=?"hello";var?flag?=?true;var?str1;
注:加了var聲明變量,代表的是局部變量,不加則代表的是全局變量
b.通過 newNumber 可以進行與字符串和布爾的轉換:
var?num?=?new?Number(1);var?num?=?new?Number(true);????//結果為1var?num?=?new?Number("12");????//如果字符串不為數字,則結果為NaN
c.通過 newString 可以進行與數字和布爾的轉換:
var?str?=?new?String("hello");var?str?=?new?String(12);var?str?=?new?String(ture);????//結果為true
d.通過 newBoolean 可以進行與數字和字符串的轉換:
var?flag?=?new?Boolean("123");????//非空為真var?flag?=?new?Boolean(2);????//非0為真
注:字符串:“”空為false,非空為true
數字:非0為true,0為false
e.null 與 undefined 的區別:
①undefined :聲明了變量并未初始化
②null:當在文檔中找不到這個元素的時候
f.對象(Object):
①初始化:
//對象初始化方式一:var?person?=?{userName:"張三",userPwd:"123",userAge:18}//對象初始化方式二:var?user?=?new?Object(); user.userName?=?"李四"; user.userAge?=?18;
②屬性訪問:
//對象的屬性訪問方式一:????對象名.屬性名;alert(user.userName);//對象的屬性訪問方式二:????對象名["屬性名"];alert(user["屬性名"]);
g.數組
聲明:
var?array?=?new?Array();????//聲明方式一var?array?=?new?Array(3);var?nums?=?[1,2,"張三"];????//聲明方式二var?strs?=?new?Array("張三","李四");????//聲明方式三var?strs?=?new?Array(new?Number(2));
3.運算符
a.算數運算符:+ - * / % ++ --
b.賦值運算符:+= -= *= /= %=
c.比較運算符:== === > < >= <= !=
①===:表示類型和值都一樣
②==:表示值一樣
在js中字符串的比較一般用==來代替.equal
d.邏輯運算符:&& || !
e.三目運算符:
var?num?=?判斷表達式???真執行表達式?:?假執行表達式
4.判斷語句:if-else switch
5.循環語句:while do-while for for-each
for(i?=?0;?i?<?100;?i++){alert(i); }
for(index?in?names){document.write(names[xindex]); }
6.方法
a.聲明:
function?test(a,b){????//聲明方式一return?a+b; }var?test1?=?function(){????//聲明方式二}var?test2?=?new?Function(?function?(){????//聲明方式三})
注:函數默認返回值未定義(undefined)
函數如果需要返回值,直接return
b.訪問:
test();
7.String (String的方法與Java類似,詳見API)
str.substr(1,3)????//截取從下標為1的元素開始取3個str.substring(1,3)????//截取下標1到2的元素(前閉后開)
注:js字符串的length是屬性,而java中是方法
8.時間(Date)
var?date?=?new?Date();????//聲明var?date?=?new?Date("2015/01/01");getDay();????//一周的第幾天(0-6)getDate();????//一月的第幾天(1-31)getMonth();????//月份(0-11)getFullYear();????//以四位數字返回年份getHours();????//小時?(0?~?23)getMinutes();????//分鐘?(0?~?59)getSeconds();????//秒數?(0?~?59)getMilliseconds();????//毫秒(0?~?999)getTime();????//返回1970年1月1日至今的毫秒數
Date.parse("2015/01/01");????//指定日期的毫秒數
9.數學(Math)(方法與Java類似,詳見API)
10.全局函數
isNaN();????//檢查某個值是否是數字Number();????//把對象的值轉換為數字String();????//把對象的值轉換為字符串parseInt();????//解析一個字符串并返回一個整數parseFloat();????//解析一個字符串并返回一個實數eval();????//計算?JavaScript?字符串,并把它作為腳本代碼來執行
11.事件(Events)
a.UI相關:onload、onunload、onresize、onselect
b.焦點相關:onblur、onfocus
c.鼠標與滾輪相關:onclick、ondblclick、onmousedown、onmousemove、onmouseout、onmouseover、onmouseup
d.鍵盤相關:onkeydown、onkeyup、onkeypress
e.其他:onabord、onchange
12.正則表達式(RexExp)
var?regex?=?/^[a-z]$/?g;????///pattern/attributesvar?regex?=?new?RegExp?("[a-z]","g");????//new?RegExp(pattern,?attributes);regex.text(str);????//檢索字符串中指定的值。返回?true?或?falseregex.exec(str);????//檢索字符串中指定的值。返回找到的值,并確定其位置
注:str.match(regex);
返回的是根據正則表達式匹配的結果
如果全局匹配,返回的是數組
如果沒有匹配成功,則返回null
Java 之 JavaScript (一)
轉載于:https://blog.51cto.com/idcjia/1897015