我是javascript新手,正在尝试弄清楚某些代码的语法。曾尝试使用Google搜索类似问题,但似乎找不到任何相关问题。也许我没有使用正确的关键字进行搜索:(
我正试图从以下方面理解代码:
https://github.com/klokantech/mapbox-gl-js-offline-example/blob/gh-pages/index.html
以下是代码摘录:
<script>
// mapboxgl.accessToken = 'pk.your-own-code-here-for-online-maps';
mapboxgl.accessToken = 'NOT-REQUIRED-WITH-YOUR-VECTOR-TILES-DATA';
var style = {
"version": 8,
"sources": {
"countries": {
"type": "vector",
// "url": "mapbox://map-id"
// "url": "http://tileserver.com/layer.json",
"tiles": [location.origin+location.pathname+"countries/{z}/{x}/{y}.pbf"],
"maxzoom": 6
}
},
我要理解的代码行就是此问题的标题中所述。
有人可以向我解释吗?
非常感谢。
答案 0 :(得分:1)
这些只是(子)字符串,稍后将被相应的值替换。就其本身而言,它们没有任何意义或功能。
Mapbox Style Specification指向TileJSON specification,其中说:
[..] {z},{x}和{y}(如果存在)将替换为相应的整数。
然后,库可能会按照以下方式进行操作:
let url = "{x}/{y}/{z}".replace( "{x}", 1337 ).replace("{y}", -99).replace("{z}", 1.333)
您当然会在实际设置中使用变量代替数字文字。