2010-10-21 49 views
0

我正在使用JSON服務器的drupal中的服務模塊,我使用jQuery訪問它,這很好,但我有一個小問題。drupal json服務器,帶有##符號的對象在javascript中?

的Drupal/JSON服務器似乎總是以#符號,我真的不知道該如何處理返回的對象,這讓我無法做

object.property

因爲在現實中,它的對象。#屬性,但顯然JavaScript給出錯誤,所以我應該只運行一個正則表達式並替換「#」符號或我該怎麼做?

例子,我調用使用jQuery的後一些方法,並返回,例如,一會的console.log吐出數據如下:

Object 
#data: Object 
#error: true 
#message: "Already logged in as admin." 
__proto__: Object 
#error: false 
__proto__: Object 

現在,它的偉大工程,它返回我需要等方面的數據,但我希望能夠TODO:

object.message,但它不會讓我,因爲# 的,我不能做對象#消息

所以無論是JavaScript的內置了一些有趣的事情這個,或者我需要刪除所有的「#」,但那不是對我來說似乎是一個很好的解決方案,不要問我爲什麼Drupal使用這個符號作爲名稱的一部分返回對象,我想它有某種用途或含義,但我還沒有明白,

Forgive我的無知,如果它是「明顯」的東西:D

另外我想一個正則表達式只會讓我的應用程序更慢,如果這些是大json對象/字符串,所以不是,對不對?

謝謝!

回答

1

當屬性名稱具有類似奇怪的字符時,您總是可以使用object['#message']

我對Drupal一無所知,但是如果我在那種情況下,我一定會試着弄清楚如何讓它退出,把奇怪的JSON發回給我。

+0

是的,我看着模塊代碼(PHP),他們只是生成這樣的對象,我可以很容易地擺脫「#」,但是,我一直在想,他們必須有一些理由讓它擁有它。 – quiggle 2010-10-21 19:49:53