2017-10-20 81 views
0

我正在做一些檢查什麼是最大值和什麼是最小值。爲此,我使用Math.max.apply()Math.min.apply()。 之前我檢查我轉換一個對象從GeoJson代碼中調用和從。 ,看起來像這樣:Math.max.apply在非對象上調用了CreateListFromArrayLike

{ 
 
\t "type": "FeatureCollection", 
 
\t "features": [ 
 
\t \t { 
 
\t \t \t "type": "Feature", 
 
\t \t \t "geometry": { 
 
\t \t \t \t "type": "Polygon", 
 
\t \t \t \t "coordinates": [ 
 
\t \t \t \t \t [ 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.338356, 
 
\t \t \t \t \t \t \t 52.790868 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.378572, 
 
\t \t \t \t \t \t \t 52.648089 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.10522, 
 
\t \t \t \t \t \t \t 52.663572 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.089325, 
 
\t \t \t \t \t \t \t 52.798539 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.338356, 
 
\t \t \t \t \t \t \t 52.790868 
 
\t \t \t \t \t \t ] 
 
\t \t \t \t \t ] 
 
\t \t \t \t ] 
 
\t \t \t }, 
 
\t \t \t "properties": { 
 
\t \t \t \t "name": "DiggitTwoOne", 
 
\t \t \t \t "regioFacetId": "tcm:106-353682-1024", 
 
\t \t \t \t "level": 3, 
 
\t \t \t \t "from": "10", 
 
\t \t \t \t "to": "12" 
 
\t \t \t } 
 
\t \t }, 
 
\t \t { 
 
\t \t \t "type": "Feature", 
 
\t \t \t "geometry": { 
 
\t \t \t \t "type": "Polygon", 
 
\t \t \t \t "coordinates": [ 
 
\t \t \t \t \t [ 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.105498, 
 
\t \t \t \t \t \t \t 52.663816 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.378605, 
 
\t \t \t \t \t \t \t 52.648187 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.417051, 
 
\t \t \t \t \t \t \t 52.520692 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.173867, 
 
\t \t \t \t \t \t \t 52.509454 
 
\t \t \t \t \t \t ], 
 
\t \t \t \t \t \t [ 
 
\t \t \t \t \t \t \t 6.105498, 
 
\t \t \t \t \t \t \t 52.663816 
 
\t \t \t \t \t \t ] 
 
\t \t \t \t \t ] 
 
\t \t \t \t ] 
 
\t \t \t }, 
 
\t \t \t "properties": { 
 
\t \t \t \t "name": "DiggitTwoTwo", 
 
\t \t \t \t "regioFacetId": "tcm:106-353682-1024", 
 
\t \t \t \t "level": 3, 
 
\t \t \t \t "from": "13", 
 
\t \t \t \t "to": "15" 
 
\t \t \t } 
 
\t \t } 
 
    ] 
 
}

現在的JavaScript代碼如下所示:

var from = event.feature.getProperty("from"); 
 
var to = event.feature.getProperty("to"); 
 
var mergeObjects = JSON.parse(from,to); 
 

 
console.log(Math.max.apply(Math,mergeObjects)); 
 
console.log(Math.min.apply(Math, mergeObjects));

當我運行的JavaScript代碼,它提供了一個像這樣的錯誤: CreateList FromArrayLike調用非對象。

我正在使用來自和來自的對象。

有沒有我做錯了,或者我得到了這樣使用它的錯誤。

回答

0

您的問題是apply接受一個數組,你不傳遞給它的是:

var from = event.feature.getProperty("from"), 
    to = event.feature.getProperty("to"), 
    numArr = [from, to]; 

Math.max.apply(Math, numArr); 
Math.min.apply(Math, numArr); 

這是你在找什麼?

+0

是的,謝謝!那完全是我所期待的。 – MissesA

+0

很高興幫助,@米塞斯A. – DMcCallum83

相關問題