2014-10-30 10 views
0
<!DOCTYPE html> 
<html> 
    <body> 

     <p>Creating a JavaScript Object.</p> 

     <p id="demo"></p> 

     <script> 
      var person = { 
       firstName : "John", 
       "lastName" : "Doe", 
       age  : 50, 
       "eyeColor" : "blue" 
      }; 

      document.getElementById("demo").innerHTML = 
       person.firstName + " " + person.lastName + " is " + person.age + " years old."; 
     </script> 
    </body> 
</html> 

результат --- --- John Doe 50 лет. здесь, является ли свойство firstName, «lastName» заключено в кавычки или нет кода, все еще работает. Но какова техническая разница и в каких случаях он не будет работать , например, в JSON свойство firstName объекта person недействительно json синтаксис если только котировки отсутствуют. , но javascript позволяет либо синтаксис работатьпонимание Синтаксис объектов Javascript

+0

В JSON в кавычки необходимы. В js объектных литералах это не так. Не указывайте имена свойств в js, если у вас нет причины. –

+1

JSON - это подмножество js и гораздо более строгая. Это просто означает, что JSON является более строгим и требует, чтобы имена свойств были кавычками. Inline js notation слабее и не требует кавычек. При этом любой json должен быть сгенерирован с использованием сериализатора. – Martin

+0

методы сериализации с использованием stringify не возможны, хотя – prognovice

ответ

0

Объект Javascript может иметь имена ключей, заключенные в кавычки или без кавычек. Эта функция имеет большее значение, когда имя ключа содержит специальный символ, как - белое пространство и т.д.

Foe например

var person = { 
    first Name : "John", // Will not work 
    "last Name" : "Doe", // Will work 
    age  : 50, 
    "eyeColor" : "blue" 
}; 
Смежные вопросы