gpt4 book ai didi

javascript - 我如何获得第一个js对象?

转载 作者:行者123 更新时间:2023-11-30 20:01:00 27 4
gpt4 key购买 nike

我有这个

 var markersList = document.getElementById('markersList');
L.MarkerCluster.include({
spiderfy: function(e) {
var childMarkers = this.getAllChildMarkers();
this._group._unspiderfy();
this._group._spiderfied = this;
// Fill the markersList.
markersList.innerHTML = childMarkers
.map((marker, index) => `<li>Marker ${index + 1}:
${marker.getLatLng()}</li>`)
.join('');
// Show the modal.
console.log(markersList);
$(".modalResult").modal('show');
},...

上面在控制台中给出了我:

<li>Marker 1: LatLng(45.49934, 9.37966)</li>
<li>Marker 2: LatLng(45.49934, 9.37966)</li>

我需要能够得到一个字符串 45.49934, 9.37966 因为它们是相同的值,我只需要一个,我需要它作为一个字符串,因为我必须将它作为一个字符串插入稍后输入值:

<input type="hidden" value="45.49934, 9.37966">

最佳答案

如果我正确理解你的问题,那么你可以通过以下正则表达式从 getLatLng() 的结果中提取纬度和经度值:

/(-?\d+.\d*)/gi 传递给 .match()

此正则表达式将从 getLatLng() 的结果中提取两个数字;一个用于 lat,另一个用于 lng,然后可以将它们组合起来获取用于输入元素值属性的 requiredString:

{ 
spiderfy: function(e) {
var childMarkers = this.getAllChildMarkers();
this._group._unspiderfy();
this._group._spiderfied = this;
// Fill the markersList.

markersList.innerHTML = childMarkers.map((marker) =>
`<li>Marker: ${marker.getLatLng()}</li>`).join('');

// If there are any childMarkers
if(childMarkers.length > 0) {

// Match the lat and lng numbers from the string returned by getLatLng()
const [lat, lng] = `${ childMarkers[0].getLatLng() }`
.match(/(-?\d+.\d*)/gi);

// Construct the required string value from the extracted numbers
const requiredString = `${ lat }, ${ lng }`;

// Use requiredString to populate the value attribute of the
// input field in OP
console.log(requiredString);

}

// Show the modal.
console.log(markersList);
$(".modalResult").modal('show');
}
}

关于javascript - 我如何获得第一个js对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53385881/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com