t.replace не является функцией (…)

Ниже приводится ошибка в вопросе, когда я проверяю console.log, и он прерывает его

var map = L.map('map').setView([0, 0], 2); <?php $classesForCountries = []; if (have_posts()) : while (have_posts()) : the_post(); $classesForCountries[ get_field('country') ] += get_field('year') + ' '; endwhile; endif; ?> // Now this should look something like {"Australia": "2006 2010 "} var classNameMap = <?php echo JSON_encode($classesForCountries); ?>; geojson = L.geoJson(statesData, { style: function(feature) { // Here is where we got the issue var classes = classNameMap[feature.properties.sovereignt]; if (classes) { return {className: classes}; } }, }).addTo(map); 

ОБНОВИТЬ

посмотрев на console.log, он указывает мне на строку в библиотеке:

 ...t.replace(/^\s+|\s+$/g,"")},splitWords:function(t){return o.Util.trim(t).split(/\s+/)}... 

«@ Fred-i-lol превосходно. Большое спасибо. Положите это в ответ, и я его приму. – rob.m»

Согласно запросу OP:

Это += get_field('year') + ' '

Возможно, вы пришли с фона JS / C и считаете, что знаки + могут использоваться для конкатенации в PHP. PHP интерпретирует знаки плюса, думая, что вы хотите делать математику.

Это точки, которые объединяются в PHP:

 .= get_field('year') . ' '