1. 空值:null,undefined(NaN, Not a Number)
e.g.: var bestAge=null; //null
var currentCount; //undefined,NaN
作比較時(shí),null value==undefined value :window.alert(bestAge==currentCount);//返回true;
2. 隱式類型轉(zhuǎn)換:
string + number == string + number.toString();
string + boolean == string + boolean.toString();
Boolean + number == number + 0/1;
3. 數(shù)據(jù)類型:
3.1 基本類型:
string:由單引號或雙引號括起;
Number:integer和浮點(diǎn)數(shù)都被當(dāng)作浮點(diǎn)數(shù)處理;
Boolean:true/false;
3.2 復(fù)合類型
Object:
Array:
3.3 特殊類型:
Null:var v=null; typeof(v)=="object";
undefined:var v; typeof(v)=="undefined";
if(typeof(v) == "undefined"){}//注意要用引號
4. 操作符:
1==“1” //結(jié)果為true;
1===“1” //結(jié)果為false;
delete/typeof/void/instanceof/new/in
5. Object & Array
Array是一個(gè)特殊的Object,它擁有l(wèi)ength屬性。
例如:
Array myArray = new Array();
myArray[100] == "hello";//則length屬性自動增長到101;
myArray.length=100;//則自動刪除下后面的元素;
所以的Object都有自動擴(kuò)張的特點(diǎn),e.g.:
var myObj = new object();
myObj.name="happyhippy";
myObj["age"]=23;
myObj["Not A valid identifier"]="This is a valid Property";
myObj[100] = "100";
補(bǔ)充:在Array對象上擴(kuò)張屬性,并不會改變其length。
var myArr = new Array();
myArr["100"] = 'length變成101, “100”被當(dāng)作數(shù)字處理';
myArr["100 "] = 'length還是101,“100 ”中間有空格,此時(shí)只能當(dāng)作屬性被處理';
6. 特殊對象
6.1 string:
string.subString(7,4); //自動取較小的作為start,較大的作為end;
string.length屬性;
6.2 Math:
Math.PI
Math.pow(number,power);
6.3 Date:
var today = new Date();
today.getYear();
today.getMonth();
today.getDate();
6.4 Number:
Max_Value:(+/-)1.79E+308
Min_Value:(+/-)1.79E-308
NaN: Not a Number
POSITIVE_INFINITY:1.79E+308
NEGATIVE_INFINITY:-1.79E+308
isNaN:判斷是否為NaN值;
var v=value/0;//或Number.NaN,來設(shè)置NaN值
7. 自定義對象:
e.g:
function MyObject(i,j)
{
this.p1 = i;
this.p2 = j;//添加屬性
this.toString = changeToString;//添加方法
}//任一函數(shù),都可以當(dāng)作構(gòu)造函數(shù)和類型的定義
function changeToString()
{
return this.p1.toString()+this.p2.toString()+this.p3.toString();
}
var myObj = new MyObject(1,2);
myObj.prototype.p3 = 3; //添加屬性
myObj.toString();//返回“123”
8. document.write()/document.writeln();
當(dāng)document不是正在被打開或解析,調(diào)用這些方法將會清空document,然后在write。
9. MessageBox:
window.alert("Message");
var bool = window.confirm("OK to Continue; Cancel to Stop!");
var value = window.prompt("WelCome?","Enter your name here:");
浙公網(wǎng)安備 33010602011771號