對象通路語句
for...in循環語句
for...in循環語句和for循環語句十分相似,for...in語句用來周遊對象的每一個屬性。每次都将屬性名作為字元串儲存在變量裡。
文法:for(variable in object){ ...statement }
variable是一個變量名,聲明一個變量的var語句、數組的一個元素或者對象的一個屬性;
object是一個對象名,或者是計算結果為對象的表達式;
statement通常是一個原始語句或者語句塊,由它構成循環的主體。
例子1:
<script type="text/javascript" language="JavaScript">
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL1ADO2MDM0gTMyETMxgTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
var objectes={uesr:"afa",
age:"21",
QQ:"15625462",
email:"[email protected]",
pwd:"4as4fa4f"};
for(var example in objectes){
document.write("屬性:"+example+"="+objectes[example]+"<br />")
}
</script>
例子2:
var objectes=document;
var object0="";
object0=example+"="+objectes[example];
document.write(object0+"<br />")
}
with語句
with語句被用于在通路一個對象的屬性或方法時避免重複使用指定對象引用。
文法:with(object){ statements }
object:指定在statement塊中沒有引用的情況下使用那個對象引用。
在一個連續的程式代碼中,如果多次使用某個對象的多個屬性或方法,那麼隻要在with關鍵字後的括号()中寫出該對象的名稱,就可以在随後的大括号{ }中的程式語句中直接引用該對象的屬性名或方法名。
JavaScript中的數組
建立array對象
可以用靜态array對象建立一個數組對象,已記錄不同類型的資料。
文法:arrayObj=new Array()
arrayObj=new Array([size])
arrayObj=new Array([element0[,element1[,...[elementN]]]])
arrayObj:必選項。要指派為Array對象的變量名
size:可選項。設定數組的大小。由于數組的下标是從零開始,建立元素的下标為0-size-1.
elementN:可選項。存入數組的元素。使用該文法時必須有一個以上的元素。
例子:
arrayobj=new Array(1,2,3,"a","b");
console.log(arrayobj);
</script>
Array對象的輸入/輸出
1.array對象的輸入
向array對象中輸入數組元素有三種方法。
(1)在定義array對象時直接輸入數組元素
arrayobj=new Array("a","b","c")
(2)利用array對象的元素下标向其輸入數組元素
arrayobj=new Array(7)
arrayobj[3]="a";
arrayobj[4]="b";
(3)利用for語句向array對象中輸入數組元素
var n=7;
arrayobj=new Array();
for(var i=0;i<n;i++){ arrayobj[i]=i }
2.array對象的輸出
将array對象的元素值輸出有三種方法
(1)用下标擷取指定元素值
var s=arrayobj[1];
(2)用for語句擷取數組中的元素值
for(var i=0;i<arrayobj.length;i++){ str=str+arrayobj[i].toString(); }
document.write(str);
(3)用數組對象名輸出所有元素值
Array對象的方法
數組的添加和删除
數組的添加和删除可以使用concat()、shift()、pop()、push()、unshift()方法實作。
1.concat()方法
concat()方法用于将其他數組連接配接到目前數組的尾端
文法:arrayobject.concat(arrayX,arrayX,arrayX,...,arrayX)
arrayobject:必選項。數組名稱。
arrayX:必選項。該參數可以是具體的值,也可以是數組對象。
例子:var arr=new Array(1,2,3,4,5,6,7,8);
document.write(arr.concat(9,10));
2.shift()方法
shift()方法用于把數組中的第一個元素從數組中删除,并傳回删除元素的值。
文法:arrayobject.shift()
arrayobject:必選項。數組名稱。
傳回值:在數組中删除的第一個元素的值。
var arr=new Array(1,2,3,4,5,6,7,8);
var del=arr.shift();
console.log("删除的元素是:"+del+"删除後的數組為:"+arr);
3.pop()方法
pop()方法用于删除傳回數組中的最後一個元素。
文法:arrayobject.pop()
傳回值:array對象的最後一個元素。
var del=arr.pop();
4.push()方法
push()方法向數組的末尾添加一個或多個元素,并傳回添加後的數組長度。
文法:arrayobject.push(newelement1,newelement2,...newelementN,)
傳回值:把指定的值添加到數組後的新長度。
5.unshift()方法
unshift()方法向數組的開頭添加一個或多個元素。
文法:arrayobject.unshift(newelement1,newelement2,...newelementN,)
設定數組的排列順序
1.reverse()方法
reverse()方法用于颠倒數組中元素的順序。
文法:arrayobject.reverse()
console.log(arr);
arr.reverse();
console.log("删除後的數組為:"+arr);
2.sort()方法
sort()方法用于對數組的元素進行排序。
文法:arrayobject.sort(sortby)
sortby:可選項。規定排序的順序,必須是函數。
var arr=new Array(5,4,2,3,1,6,7,8);
arr.sort();
擷取數組中的某段數組元素
擷取數組中的某段數組元素主要用slice()方法實作。
slice()方法可從已有的數組中傳回標明的元素。
文法:arrayobject.slice(start,end)
start:必選項。規定從何處開始選取。如果是負數,那麼它規定從數組尾部開始算起的位置。也就是說-1指最後一個元素,-2指倒數第二個元素。
end:可選項。規定從何處結束選取。
傳回值:傳回截取後的數組元素,該方法傳回的資料中不包括end索引所對應的資料。
console.log("從數組第3個元素開始選擇:"+arr.slice(3));
console.log("從數組第2個元素到5個元素開始選擇:"+arr.slice(2,5));