2011-12-11 31 views
0

嗨我想要計算函數中的平均值並從json obj中獲取值。任何人都可以告訴我在這裏錯在哪裏。我相信平均功能有問題。 http://jsfiddle.net/NLaSJ/javascript函數與json值

var json = '[{ "firstName" : "Stone", "lastName" : "Carpentar", "Salary1" : "600", "Salary2" : "200" "}, {"firstName":"Samson", "lastName": "Sears", "Salary1" : "200", "Salary2":"500"}]'; 

var emp = JSON.parse(json); 
for (var i = 0; i < emp.length; i++) { 
    var msg = emp[i]; 
    var div = document.createElement('div'); 
    div.innerHTML = msg.firstName + '&nbsp' + msg.lastName + '&nbsp' + msg.Age + '&nbsp' + 'AverageSalary' + computeAverage(msg.salary1, msg.salary2); 

    document.body.appendChild(div); 

} 


function computeAverage(msg.salary1, msg.salary2) { 
    return (msg.salary1 + msg.salary2)/2; 
} 

感謝

+0

它應該是函數computeAverage(salary1,salary2) –

+0

我試過了,但沒有奏效。 – user443946

+0

不知道如何訪問功能 – user443946

回答

1

您的JSON使用 「Salary1」 和 「Salary2」,但你的代碼是所有小寫。 JavaScript(和JSON)區分大小寫。

另外,您的「computeAverage()」函數聲明在語法上是錯誤的。

此外,你的JSON字符串中有一個流浪的雙引號字符。

另外,在你的JSON中,數值被引用爲字符串,它們不應該是。

+0

謝謝Pointy,我修正了這些問題,但仍然沒有得到預期的結果,我猜computeAverage沒有按預期執行。 ://jsfiddle.net/NLaSJ/17/ – user443946

+0

謝謝我想這就是問題所在,我剛開始學習JSON,我去的第一個地方是w3schools,他們包括像字符串這樣的值,但無論如何感謝一噸 – user443946

+1

這是一個好主意[避免w3schools](http://w3fools.com):-)當然,StackOverflow也是一個很好的資源。 – Pointy