我正在编写一些函数,它们构造一个格式正确的JSON字符串,然后我可以将其解析为一个JSON对象。
我的对象在JSONLint上失败,出现以下错误:
syntax error, unexpected TINVALID at line 2
[
SERVER: {
ip = 10.10.10.1,
port = 8100
},
TYPES: [
ssh,
shht
]
]我假设这会给我一个JavaScript对象数组。
即使我这样做了(对象而不是数组):
{
SERVER: {
ip = 10.10.10.1,
port = 8100
},
TYPES: [
ssh,
shht
]
}它不工作,我得到同样的错误:
我假设有了这个对象,我就能够像这样访问一些数据:
var serverIP = myObject.SERVER.ip;这当然是我想做的。
在此之前,非常感谢,
乔
发布于 2011-04-17 22:37:14
将json对象与javascript数组混合在一起
这是json格式。
{
"item":"value",
"item2":"value"
}这将是一个JavaScript数组
[
"apple",
"orange"
]我想这就是你要找的东西
{
"SERVER": {
"ip": "10.10.10.1",
"port": 8100
},
"TYPES": [
"ssh",
"shht"
]
};发布于 2011-04-17 22:31:04
您必须使用引号将标识符和字符串形式的值括起来:
这是有效的JSON:
{
"SERVER": {
"ip": "10.10.10.1",
"port": 8100
},
"TYPES": [
"ssh",
"shht"
]
}如果您实际上根本没有使用JSON,而只是尝试创建一个Javascript文本对象,那么您就不应该使用JSONLint来检查代码。
这是有效的Javascript:
var myObject = {
SERVER: {
ip: '10.10.10.1',
port: 8100
},
TYPES: [
'ssh',
'shht'
]
};https://stackoverflow.com/questions/5694065
复制相似问题