Solved

json javascript array question about  array referance

Posted on 2009-05-18
4
278 Views
Last Modified: 2013-11-08
Hi,


I am using JSON and eval to get an array of objects, like this:
{"location":[ {"loc_id":  "76",
                                    "description": "test",
                                    "company": "testrco",
then eval in javascript so var loc = eval........

The loc_id is a unique no., can i use this as the array no? I want to add to the array and change some of the values "description" for example would be god if i could reference it like
loc.location.loc[76].description instead of loc.location[2].description where the 2 doesn't relate to anything.

Hope I am making sense....

Thanks,
Ewan
0
Comment
Question by:ewan69
  • 2
  • 2
4 Comments
 
LVL 19

Expert Comment

by:moagrius
ID: 24412939
natively, no - 76 is a value, not a key.  however, you could write a simple loop to create an array for reference and assign key by loc_id
var list = [];
for(var i=0;i<loc.location.length;i++){
var ref = loc.location[i];
var id = ref.loc_id;
list[id] = ref;
}

Open in new window

0
 

Author Comment

by:ewan69
ID: 24413183
Hi moagrius,

Thanks for the quick reply, sorry for not using the right terminoligy, still learing....

I will try your code in a minute thanks, is there a better way of doing things?

I want to be able to periodically update the array elements from a database so i was thinking if the PRIMARY KEY value was used as the array key, using eval i could easily replace the old element with the new.

Is there a better way of doing it?? maybe loop through the array and see if loc.location[i].loc_id == the loc_id of the update, if it does then replace that element with the new one.

not sure if element is the right word, i mean one of the whole objects in the array.

Thanks,

Ewan
0
 
LVL 19

Accepted Solution

by:
moagrius earned 500 total points
ID: 24413476
Looping through the array and checking the loc_id is a good approach too - either way works really.  Just a note, in the above example code I gave before, you'd then look up the element using list[76] - "list" would contain the order copy of the location array.
0
 

Author Closing Comment

by:ewan69
ID: 31582630
Thanks for your help... :)
0

Featured Post

Is Your AD Toolbox Looking More Like a Toybox?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction A frequently asked question goes something like this:  "I am running a long process in the background and I want to alert my client when the process finishes.  How can I send a message to the browser?"  Unfortunately, the short answer …
Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question