Ваша проблема в том, как вы инициализировали массив map_markers
.Вы, вероятно, должны делать следующее:
var map_markers = [[52.951946, 1.018124], [52.955311, 0.987997]];
В противном случае с вашим map_markers
вам пришлось бы ссылаться на него следующим образом:
var m = map_markers[i];
var myLatLng = new google.maps.LatLng(m[0][0], m[0][1]);
Давайте разберем ваш map_markers
массив, который поможет вам понять проблему:
var map_markers = [ [ [52.951946], [1.018124] ], [ [52.955311], [0.987997] ] ];
console.log(map_markers[0]);
// [[52.951946], [1.018124]]
Object.prototype.toString.call(map_markers[0]);
// "[object Array]"
console.log(map_markers[0][0]);
// [52.951946]
Object.prototype.toString.call(map_markers[0][0]);
// "[object Array]"
console.log(map_markers[0][0][0]);
// 52.951946
Object.prototype.toString.call(map_markers[0][0][0]);
// "[object Number]"
Поэтому проблема, с которой вы столкнулись, сводится к тому, что параметры, передаваемые в конструктор google.maps.LatLng()
, были Array
вместо Number
.