Показать сообщение отдельно
  #5 (permalink)  
Старый 19.09.2015, 15:34
Кандидат Javascript-наук
Отправить личное сообщение для фонарик Посмотреть профиль Найти все сообщения от фонарик
 
Регистрация: 23.02.2013
Сообщений: 127

Сообщение от sortarray Посмотреть сообщение
materials = {"Глина" : 10, "Цемент" : 5, "Вода" : 8, "Песок" : 14}
sort_arr =  ["Песок", "Цемент", "Вода"]

sort = function(object, pattern){
  var result={}
  pattern.forEach(function(name){
    result[name]=object[name]
  })
  Object.keys(object).forEach(function(name){if(pattern.indexOf(name) === -1) result[name] = object[name]})
  return result
}

//alert(JSON.stringify(sort(materials, sort_arr)))
sort(materials, sort_arr)
alert(JSON.stringify(materials))
//>>>> {"Песок":14,"Цемент":5,"Вода":8,"Глина":10}
Возник вопрос, а почему вот так сортировка не происходит? 13 строку я разделил на 2
Ответить с цитированием