2017-09-15 40 views
-2

時,我不斷收到一個:JavaScript對象語法錯誤聲明功能

SyntaxError: Unexpected identifier 'drive'. Expected '}' to end an object literal. (line 9) 

這似乎在暗示一個額外的「}」,但我不能發現它,或弄清楚,如果什麼都可能是錯的。我相對較新的JavaScript,所以任何幫助將不勝感激。請參閱下面的代碼。

謝謝!

var taxi = { 
    make: "Toyota", 
    model: "Taxi", 
    year: 1955, 
    colour: "yellow", 
    passengers: 4, 
    convertible: false, 
    mileage: 281341 
    drive: funtion() { 
     alert("Voom Voom"); 
    } 
}; 

function prequal(car) { 
    if (car.mileage > 10000 || car.year > 1960) { 
     return false; 
    } 
    return true; 
} 

var worthALook = prequal(taxi); 

if (worthALook) { 
    console.log("Check it out! " + taxi.make + " " + taxi.model); 
} 
else { 
    console.log("Not worth! " + taxi.make + " " + taxi.model); 
} 

taxi.drive(); 
+3

你需要一個逗號後的里程':281341'。此外,函數拼寫爲'funtion' –

+0

謝謝!這是函數錯字...由於某種原因,我的文本編輯器正確地突出了錯字,這就是我錯過它的原因! – Sadia1990

回答

3

你錯過了在第8行一個逗號,分離taxi.mileagetaxi.drive。您也闡述過「功能」錯誤地在線9

固定的,它似乎很好地工作:

var taxi = { 
 
    make: "Toyota", 
 
    model: "Taxi", 
 
    year: 1955, 
 
    colour: "yellow", 
 
    passengers: 4, 
 
    convertible: false, 
 
    mileage: 281341, 
 
    drive: function() { 
 
     alert("Voom Voom"); 
 
    } 
 
}; 
 

 
function prequal(car) { 
 
    if (car.mileage > 10000 || car.year > 1960) { 
 
     return false; 
 
    } 
 
    return true; 
 
} 
 

 
var worthALook = prequal(taxi); 
 

 
if (worthALook) { 
 
    console.log("Check it out! " + taxi.make + " " + taxi.model); 
 
} 
 
else { 
 
    console.log("Not worth! " + taxi.make + " " + taxi.model); 
 
} 
 

 
taxi.drive();

+0

謝謝:)我錯過了功能錯字。 – Sadia1990