Как я могу установить несколько свойств объекта одновременно с CoffeeScript? - PullRequest
2 голосов
/ 17 сентября 2011
      dbLocation[latitude] = data[1]
      dbLocation[longitude] = data[2]
      dbLocation[locationText] = locationText

Это мой CoffeeScript, есть ли способ оптимизировать его, чтобы он был более сжатым?

Ответы [ 2 ]

3 голосов
/ 17 сентября 2011

Вы можете написать

obj = {
  latitude: data[1]
  longitude: data[2]
  locationText
}

, а затем объединить этот новый объект в dbLocation, написав

dbLocation[key] = val for key, val of obj

или используя такую ​​функцию, как jQuery или Underscore's extend.

1 голос
/ 17 сентября 2011

Вот одна строка, но на самом деле она не намного более читаема:

[dbLocation.latitude, dbLocation.longitude, dbLocation.locationText] = [data[1], data[2], locationText]
...