2012-10-14 59 views
0

這是創建對象並在其中放置函數的正確方法嗎?我遇到的每個示例都使用簡單易懂的代碼,並在實際情況下有效使用代碼。所以我試圖通過這樣做來解決這個問題。這是正確的方式來使用一個對象與一個函數裏面嗎?

function calc() //creating an empty object named calc 
{ 
} 

var calc = new calc(); //creating a new instance of the calc object 

calc.arithmetic = function maths (input) 
{ 
    var str = input; 
    var a=str.substr(1,1); 
    var b=str.substr(2,1); 
    var c=str.substr(3,1); 

    if(b == "+") 
    { 
     answerNumber = a + c; 
    } 
    else if(b == "-") 
    { 
     answerNumber = a + c; 
    } 
    else if(b == "*") 
    { 
     answerNumber = a * c; 
    } 
    else if(b == "/") 
    { 
     answerNumber = a/c; 
    } 
} 
document.getElementById("input").value=answerNumber; 




document.write(calc.arithmetic(input)) //calling the method in the context of the object. 

回答

0

你覆蓋鈣僅含myArithmetic新對象在這裏。

你應該在做calc.myArithmetic=function(){};而不是 - 這增加了一個新的屬性與你的函數作爲價值,這可能是你想要的。

+0

好的。我現在明白那一部分。假設函數甚至起作用,理論上這會從calc.arithmetic內調用函數數學嗎? –

0

我會看看Douglas Crockford網站(http://www.crockford.com/javascript/private.html)。

+0

好的,這似乎是讓我走上正軌。謝謝! –

相關問題