簡體   English   中英

javascript語法以從外部變量設置對象屬性值

[英]javascript syntax to set object property value from external variable

我可以通過代碼片段更好地解釋我的情況

 var cascadiaFault = new google.maps.Polyline({ paths: [ new google.maps.LatLng(49.95, -128.1), new google.maps.LatLng(46.26, -126.3), new google.maps.LatLng(40.3, -125.4) ] }); 

paths屬性的值應從外部變量pathsTemp分配

 var pathsTemp = []; for (var i = 0; i < boxes.length; i++) { var bounds = boxes[i]; // Perform search over this bounds pathsTemp.push(bounds.getCenter()); } var cascadiaFault = new google.maps.Polyline({ paths: pathsTemp; }); 

它不起作用..

我嘗試過的其他選擇

paths = pathsTemp; -不工作
paths: paths.push(pathsTmep) -沒有語法錯誤,但是到達此行時在運行時未捕獲參考錯誤

PS:我沒有javascript背景,但是我沒有時間開始從頭開始閱讀語法和規則(但是,我可以理解已經編寫的大多數js代碼)

好吧,我明白了問題所在

  1. 正確的語法是paths: pathsTemp

 var pathsTemp = []; for (var i = 0; i < boxes.length; i++) { var bounds = boxes[i]; // Perform search over this bounds pathsTemp.push(bounds.getCenter()); } var cascadiaFault = new google.maps.Polyline({ paths: pathsTemp }); 

  1. 上面的代碼在語法上是正確的,但是問題在於它應該是path而不是paths

盡管示例示例位於https://developers.google.com/maps/documentation/javascript/geometry#isLocationOnEdge

使用paths ,它對我來說適用於path 可能是API文檔中的錯字

不出所料, 記錄了文檔錯誤

參考此stackoverflow討論

對於不贊成該問題的人:請看一下Google文檔中的這個令人誤解的示例片段,如果對您有意義,請更改您的意見(在這里聲望非常重要,對於像我這樣的初學者而言)

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM