相信每個學(xué)習(xí)過其他語言的同學(xué)再去學(xué)習(xí)JavaScript時就會感覺到諸多的不適應(yīng),這真是一個顛覆我們以前的編程思想的一門語言,先不要說它的各種數(shù)據(jù)類型以及表達式的不同了,最讓我們頭疼,恐怕就是面向?qū)ο蟮牟糠至?在JavaScript中,是沒有給定一個創(chuàng)建對象的關(guān)鍵詞的,它不像Java中一個class就可以創(chuàng)建一個對象,在JavaScript中,對象是一個十分松散的的key-value對的組合,通常,我們在創(chuàng)建對象時,可以通過{}來直接生成一個對象,就像我們之前所學(xué)的,對象中有屬性,有行為,這里我們稱為方法,那我們就先來創(chuàng)建一個對象:
var zhangSan ={name:"張三",age:14}
這就是一個簡單的對象,這種方式的優(yōu)點是簡單直接,一眼就可以看出來他的屬性和方法但是,這種方法的缺點也很明顯,當我們要創(chuàng)建多個對象時,我們就需要一個一個的去創(chuàng)建,一個一個的去賦值,這是十分麻煩而且也不太顯示的方法,那么我們可以用工廠法來創(chuàng)建:
1 function createPeople(name,food){ 2 var people = new object(); 3 people.name=name; 4 people.eat=function(food){ 5 alert(food); 6 } 7 return people; 8 } 9 var zhangSan=createPeople("zhangSan","豆腐"); 10 zhangSan.eat();//這時會彈出豆腐.