Coffeescript / Javascript - почему атрибут объекта не определен? - PullRequest
1 голос
/ 01 декабря 2011

У меня есть эта функция, которую я использую в проекте Rails 3.1:

setPosition: (object) ->
    console.log object
    console.log object.width
    object["position"] = [500, 50] 
    this

console.log object дает

Object
    height: 600
    position: Array[2]
    title: "Banner for Creative"
    width: 160
    __proto__: Object

, но console.log object.width не определено.Почему?

1 Ответ

3 голосов
/ 01 декабря 2011

Я ответил на аналогичный вопрос всего пару дней назад: https://stackoverflow.com/a/8299394/66226

По сути, console.log имеет некоторые асинхронные поведения (в некоторых средах).Таким образом, когда вы передаете ссылку на объект, этот объект позже становится строковым - тогда как object.width - это undefined прямо сейчас.

Если вы сделаете

console.log object.toString()

, тогда вы должны получитьболее последовательные результаты (хотя и менее симпатичные).

Редактировать: Или еще лучше,

console.log JSON.stringify(object)

См. комментарии ниже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...