Как я могу объединить два хэша с JQuery?

0

http://jsfiddle.net/Y3kx5/197/

a = {
    'a' : 'one'
}

o = {
    'a' : '1',
    'b' : '2',
    'd' : '3'
}

z = $.merge(a, o);

console.log( z ); // expected { 'a' : 'one',  'b' : '2', 'd' : '3' }

Я не хочу контактировать или присоединяться к двум хэшам, я хочу объединить их в один хеш, как вы можете сделать с методом слияния Ruby. Как я уже сказал, я хочу создать хэш:

{ 'a' : 'one',  'b' : '2', 'd' : '3' }

От a и o

  • 1
    Это не массивы, а объекты.
  • 0
    Так вы говорите, что ожидали, но не то, что получили?
Теги:
hashmap

1 ответ

5
Лучший ответ

Вам нужно посмотреть на $.extend(), так как a и b - объекты, а не массивы

a = {
    'a': 'one'
}

o = {
    'a': '1',
    'b': '2',
    'd': '3'
}

z = $.extend({}, o, a);

Демо: скрипка

Примечание: нужно смотреть на первые параметры, являющиеся пустым объектом, и порядок переданных параметров

  • 0
    Спасибо, я делал вещи на стороне сервера целую вечность и, кажется, совершенно забыл jquery!
  • 0
    Или добавьте a к o следующим образом: $.extend(o, a);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню