2010-10-21 47 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