javascript - js为每个键返回bug
问题描述
我正在尝试在 JS 中执行地图脚本,但是当我尝试返回数组键值时出现错误。这是从 0 到 9 工作的,当键是 > 10 时,返回值将是 '1' 和 '0' 而不是 '10'。
Object.keys(City).forEach(function(key) {
var idcity = City[key];
alert(idcity);
});
我的数组值来自 php 函数,我回显了数组,显示的键是“10”而不是“1”“0”。问题可能来自这个小的 JS 脚本。
城市 :
var City= {
<?php
$mycity->CreateMarker($_SESSION['visitorID']);
?>
};
// CreateMarker inside
if($dateformater >= date("Y-m-d")){
echo "{$id}: { 'lat': {$Lat}, 'lon': {$Lon} },";
$id 是数组键
谢谢。
解决方案
尝试转换为整数
Object.keys(City).forEach(function(key) {
var idcity = City[key];
alert(parseInt(idcity, 10)); });
推荐阅读
- python - 当鼠标悬停在等值线图上时显示 GEOJson/Dataframe 信息
- firebase - Firebase Cloud Firestore 社交网络数据库设计
- r - 将日志应用于时间序列列表中的所有元素
- caching - 多租户如何在 infinispan 中工作
- google-cloud-firestore - SwiftUI - 滚动到聊天应用程序的最新消息
- django - 我是否也必须为 Heroku 上的 staging 应用程序购买 dynos?
- google-sheets - 如何将 Google 表格中的文本字符串转换为日期格式
- r - 构建决策树分类
- git - Git:如何列出从特定日期合并到主控的所有远程分支/按日期排序
- php - 此 SQL 不能跨越“年终”边界