Using numbers as JSON key.
-
hello, i did some experiment as below.
i defined a sample data which is exactly the same as data inputed.
wondering why data[1] returns "undefined" but sampleData[1] is OK?Input Parameters
{ "scriptName": "KeyTest", "scriptData": { "1": {"ID":1}, "2": {"ID":2} } }Test Script
// get log service var logService = bridge.getLogServiceProxy(); var sampleData = { "1": {"ID":1}, "2": {"ID":2} }; logService.logInfoJson("sampleData" , sampleData); logService.logInfoJson("sampleData[1]" , sampleData[1]); logService.logInfoJson("data" , data); logService.logInfoJson("data[1]" , data[1]);result

-
Hmm, I actually am not sure why sampleData[1] works.
I would have thought the correct syntax would have be sampleData["1"] and data["1"] ?
No?
-
Hmm, I actually am not sure why sampleData[1] works.
I would have thought the correct syntax would have be sampleData["1"] and data["1"] ?
No?
@Paul-Winterhalder
actually i've tried "1" too.
the result is
sampleData[1] and sampleData["1"] are both OK,
data[1] and data["1"] both returned Undefined.
wondering why... -
Here is the thing, the input parameter
datareturned from our service proxy is a Java Map object, which does NOT support a number value as key when accessing value using object[key] syntax.A simple solution for this case is to convert the Java Map object to a real javascript JSON object like below:
data = JSON.parse(JSON.stringify(data)); -
Here is the thing, the input parameter
datareturned from our service proxy is a Java Map object, which does NOT support a number value as key when accessing value using object[key] syntax.A simple solution for this case is to convert the Java Map object to a real javascript JSON object like below:
data = JSON.parse(JSON.stringify(data));
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login