Как определить массив анонимных объектов в CoffeeScript? Возможно ли это вообще при использовании синтаксиса YAML?
Я знаю, что иметь массив именованных объектов довольно просто:
items:[
item1:
name1:value1
item2:
name:value2
]
Однако было бы немного сложнее, если бы у этих двух объектов не было имен.
coffeescript
Преслав Рачев
источник
источник
Просто - поместите отдельную запятую в столбец ниже того, в котором вы определяете свои объекты.
Станет:
источник
[
слева от следующей строки, это и так сбивает с толку ..Вы также можете добавить кому между каждым объектом:
источник
Я думаю, что решение с запятой лучше, но я решил добавить это для полноты:
источник
Вы можете определить переменную при определении массива, поэтому некрасивый ответ будет:
Это сработает, но вы можете получить предупреждения о «определенных, но не используемых переменных (item1, item2)». Лучшим способом было бы использовать подчеркивание, переменную, используемую для исключения неиспользуемых переменных:
console.log JSON.stringify(a)
произведет это:источник
Не ответ на вопрос OP, но на всякий случай, если вы здесь по той же причине, что и я ... Если у вас мало Mountain Dew и вы используете '=' вместо ':', то Coffeescript превратит ваш массив объектов в плоский массив без ошибки компиляции:
Производит
Вставьте еще Mountain Dew и замените '=' на ':'.
источник
Я очень рад сообщить после небольшого возни, что я смог правильно скомпилировать это:
В результате получается именно то, что вы ожидаете: список из двух анонимных объектов.
источник
Я столкнулся с связанной проблемой и нашел это решение. Если вам нужен массив из множества отдельных объектов k / v без фигурных скобок, просто сделайте отступ для некоторых из них. Кажется, добился цели.
Производит:
Мне это противоречит интуиции; вы могли бы подумать, что это создаст подобъекты, но я думаю, что запятая в конце строки говорит ему, чтобы он прекратил создавать свойства для этого объекта.
источник
Python
это мой «первый язык», я не боюсь использовать несколько дополнительных скобок и скобок. Даже если Coffeescript они не нужны, я считаю их полезными. Ваш второй блок более читабелен.Почему нет:
Для меня это по-прежнему огромное улучшение по сравнению с js, очень легко читать, минимально и довольно безопасно писать.
источник