2014-10-27 113 views
2

嘿我有一個函數,它像一個類一樣。JavaScript調用類方法

var myClass= function() { 
     this.property = ''; 
     this.say() = function() { 
      alert('Say Hello'); 
     } 

當我初始化這樣

var myClassObj= new myClass();  
myClassObj.property = 'property'; 
myClassObj.say(); 

這使我對初始化 錯誤「遺漏的類型錯誤:未定義是不是一個函數」。我做錯了什麼。

+4

'this.say( )= function' =>'this.say = function'。你不想立即調用'this.say'(此時'undefined')。 – dfsq 2014-10-27 06:43:29

+0

'this.say()'試圖調用'this.say',但是'this.say'不存在。 – 2014-10-27 06:45:06

回答

3

使用this.say而不是this.say()

1

由於暗示安德魯,使用this.say,而不是this.say()

在你的代碼也將失去關閉}

它應該是這樣的,

var myClass= function() { 
    this.property = ''; 
    this.say = function() { 
     alert('Say Hello'); 
     } 
    } 


var myClassObj= new myClass();  
myClassObj.property = 'property'; 
myClassObj.say();