1. 程式人生 > >面向物件object和constructor

面向物件object和constructor

建構函式(Constructor),是一種特殊的方法,主要用來在建立物件時初始化物件,即為物件成員變數賦初始值。總與new運算子一起使用在建立物件的語句中,特別的一個類可以有多個建構函式,可根據其引數個數的不同或引數型別的不同來區分它們,即建構函式的過載

語法:object.constructor (js)

返回值:js物件的constructor屬性返回建立該物件的函式的引用。 例項: 以下程式碼中的[native code],表示這是JavaScript的底層內部程式碼實現,無法顯示程式碼細節。 // 字串:String() var str = "張三"; document.writeln(str.constructor); // function String() { [native code] } document.writeln(str.constructor === String); // true // 陣列:Array() var arr = [1, 2, 3]; document.writeln(arr.constructor); // function Array() { [native code] } document.writeln(arr.constructor === Array); // true // 數字:Number() var num = 5; document.writeln(num.constructor); // function Number() { [native code] } document.writeln(num.constructor === Number); // true // 自定義物件:Person() function Person(){ this.name = "CodePlayer"; } var p = new Person(); document.writeln(p.constructor); // function Person(){ this.name = "CodePlayer"; } document.writeln(p.constructor === Person); // true // JSON物件:Object() var o = { "name" : "張三"}; document.writeln(o.constructor); // function Object() { [native code] } document.writeln(o.constructor === Object); // true // 自定義函式:Function() function foo(){
alert
("CodePlayer"); } document.writeln(foo.constructor); // function Function() { [native code] } document.writeln(foo.constructor === Function); // true // 函式的原型:bar() function bar(){ alert("CodePlayer"); } document.writeln(bar.prototype.constructor); // function bar(){ alert("CodePlayer"); } document.writeln(bar.prototype.constructor === bar); // true
Constructor的常用方法:

1.String getName();獲得方法名。

2.int getModifiers();獲得修飾符。

3.Class[] getParamenterTypes();獲得構造方法的引數型別。

4.newInstance(Object...args);使用當前的構造方法來建立一個物件。