Один из моих коллег создал глупую ошибку в mongo mapreduce, он должен был создать объект, но на самом деле передал строку "{}"
.Странно было то, что скрипт не разбился, а фактически перебрал всю строку, поэтому я провел некоторое исследование и обнаружил следующее:
Сценарий x="bla"; for (i in x) { alert(i); };
работает в разных браузерах следующим образом:
- IE (8): - (без предупреждений)
- Chrome: 0 1 2
- Firefox (более старый): 0 1 2 vBlength
- Firefox5: 0 1 2
- MongoDB: 0 1 2 trim ltrim rtrim
Я прекрасно знаю, что это недопустимый синтаксис, просто чистое любопытство , кто-нибудьзнаете, почему браузеры ведут себя так, как они?Меня особенно интересует поведение MongoDB.