2013-05-07 2 views
-1

Я хочу использовать _.zip function of Underscore.js для создания пар из двух массивов.Javascript: Как объединить строковые значения двух массивов?

var a = ["alpha", "beta", "gamma"]; 
var b = ["one", "two", "three"]; 
var pairs = _.zip(a, b); 
alert("pairs = " + pairs); 

Это, кажется, работает хорошо, когда done with integers однако, когда using strings результат запутанным:

пар = 3,3,3,3,3,3

Вместо этого я ожидал следующий результат:

пары = [["альфа", "один"], ["бета", "два"], ["гамма", "три"]]

Обновление:
Благодаря комментариям я обнаружил, что описанное поведение не распространяется на Chromium работает на Ubuntu. Однако ожидаемым результатом является возврат, когда я запускаю тот же скрипт в Firefox на Ubuntu.

+2

Это определенно сбивает с толку, потому что [этот код не дает этого результата] (http://jsfiddle.net/t3XvH/1/). – Jon

+1

Это сработало для меня. (Отредактировано выше, чтобы использовать строки, все еще отлично работает: http://jsfiddle.net/nmR7b/1/) –

+0

Работает отлично под XUbuntu 13.04, Chromium Version 25.0.1364.160 Ubuntu 13.04 (25.0.1364.160-0ubuntu3). JsFiddle, что izuriel отправил оповещения с '(альфа, один), (бета, два), (гамма, три)'. –

ответ

Смежные вопросы