Javascript:對象
對象我們在前面也簡單介紹過,它是一種將多個數據值集中在一個單元的東西,使用名字來存取,它是一個無序的屬性集合。
1、創建對象的幾種方式
復制代碼 代碼如下:
var empty = {} //創建一個沒有屬性的對象。
var person = {name:"ben",age:22,sex:'男'}//使用直接量創建對象
var people = {{name:'Frank',age:21},{name:'Mary',age:21},sex:'MAN'}// 對象的元素可以是對象
2、對象屬性
復制代碼 代碼如下:
var person = {}; //創建一個對象
person.name = "Frank"; //添加屬性
person.country = "china";
person.age = 22;
person.american = new Object(); //這個屬性是個對象
person.american.name = "Lisa";
person.american.country = "American";
person.american.age = 20;
function displayperson(personmore) //打印上面的對象
{
for(var p in personmore) //枚舉循環
{
if(typeof(personmore[p]) == "object")//判斷類型
{
for(var o in personmore[p])
{
document.write("American people :" +o+"\t" +personmore[p][o]+"<br />");
}
document.write("<br />");
continue;//結束本次循環,進行下一次循環.
document.write("china people :"+ p+"\t" + personmore[p] +"<br />");
}
}
displayperson(person);//調用函數
//輸出china people :name Frank
//china people :country china
//china people :age 22
//American people :name Lisa
//American people :country American
//American people :age 20
3、刪除屬性
使用delete運算符
復制代碼 代碼如下:
delete person.american;//就可以自己刪除對象的屬性
delete 是不能刪除對象的。
4、hasOwnProperty()方法和isPrototypeOf()方法
其實這兩個方法,在這裡說初學的朋友可能會和我當時學到這裡一樣,看不懂,但是沒關系,可以跳過去,到時候我們學到繼承的時候你在回頭看看,
就明白了。
4.1:hasOwnProperty()方法,如果對象用一個單獨字符串參數所指定的名字來本地定義一個非繼承的屬性,就返回true。否則返回false。
復制代碼 代碼如下:
function House(price,area,developers)
{
this.price = price;
this.area = area;
this.developers = developers;
}
House.prototype.housevalue = function(){return this.price*this.area;}
function HouseSon(price,area,developers,city)
{
House.call(this,price,area,developers);
this.city = city;
}
HouseSon.prototype = new House(10000,80,"vanke");//獲取House的屬性
delete HouseSon.prototype.price;//刪除
delete HouseSon.prototype.area;
delete HouseSon.prototype.developers;
HouseSon.prototype.container = function(){return "container" + this.price * this.area;}
for(var i in HouseSon.prototype)
{
document.write(i+"<br />");
}
var house = new HouseSon(20000,180,"vanke","shenzhen");
document.write(house.container()+"<br />");
document.write(house.housevalue()+"<br />");
document.write(house.hasOwnProperty("housevalue")+"<br />");//這是原型
document.write(house.hasOwnProperty("price")+"<br />");//本地
Javascript:數組
數組是一個有序的集合,每個元素在數組中都有一個數字化的位置,可以使用小標訪問,由於javascript是一種非數據類型的語言,所以裡面可以包涵不同類型。
1、數組的創建
復制代碼 代碼如下:
var array = [] //不包涵任何元素的數組
var person = ["Frank",22,'男 '];//帶不同元素的數組
var value = 100;
var num = [value+12,value-23,value*2];//支持表達式
//當然還有使用Array來創建,可以有不同類型的參數,可以是對象,數組等。
2、數組的添加,刪除,遍歷。
由於添加,遍歷都比較簡單,就不舉例說明,但是這麼還是說說刪除吧!
復制代碼 代碼如下:
function diaplayarray(arr) //執行打印任務的函數
{
if(!arr)return;
for(var num =0;num<arr.length;num++)
{
document.write("Num is "+ arr[num]+ "\t");
}
document.write(" "+"<br />");
}
var array = [2,32,14,57,6];
document.write(array.shift()+"<br />"); //刪除數組中的第一個,返回刪除的值2
document.write(array.pop()+"<br />"); //刪除數組中的最後一個,返回刪除的值6
document.write(array.join("*")+"<br />");//將數組元素用*連接返回一個字符串32*14*57
document.write(array.push(100) +"<br />");//添加數組元素
array.reverse();//顛倒數組元素順序
diaplayarray(array);//輸出Num is 100 Num is 5 Num is 4 Num is 3
array.splice(1,2,300,600);//從數組第二個開始刪除(含第二個),到第三個,後面300,600是新插入的值
diaplayarray(array);//輸出Num is 100 Num is 300 Num is 600 Num is 32
小結:同志們辛苦了..........
關於對象和數組就介紹到這裡吧,接下來我們馬上就要到javascript客戶端了。