2012-06-18 148 views
0

對於IE7和IE8,我捕獲了一些JSONp在我的網頁中使用。下面是JSONP的摘錄:從JSON中刪除垃圾?

{ 
    class: "min-temp", 
    span: { 
     class: "units-values temperature-units-values", 
     span: [ 
      { 
       class: "units-value temperature-value temperature-value-unit-c", 
       span: { 
        class: "unit", 
        content: "°C" 
       }, 
       content: "11 
       " 
      }, 
      { 
       class: "units-value temperature-value temperature-value-unit-f", 
       span: { 
        class: "unit", 
        content: "°F" 
       }, 
       content: "52 
       " 
      } 
     ] 
    } 
}, 

如果你看一下content: "11content: "52,你會看到有很多的照顧他們多餘的字符。我如何刪除這些額外的字符,因此我只能以數字結尾,即1152

目前,我提取這些數字如下:

day.span[1].span.span[0].content給我11day.span[1].span.span[1].content給我52

+0

使用'$ .trim()'? – Pointy

+0

對不起,我應該指出,我需要這個在IE7和IE8上工作。 .trim()仍然適用? – oshirowanen

+2

這甚至不是有效的JSON。 – Brad

回答

4

如果您只希望有整數值,請使用parseInt。它會忽略空格。

+1

不要忘記指定一個基數,以防數字以'0'或'0x'開頭:'parseInt('52',10)'。 –

1

如果它們總是預期爲數字,那麼可以使用parseIntparseFloatcontent,或者如@Pointy所示,可以使用$.trim()

0

使用正則表達式修剪任何不是數字的東西。

content = content.replace(/\D/g, '');