Solved

dynamic push

Posted on 2013-12-09
10
104 Views
Last Modified: 2013-12-26
Dear all,
I got items like this:
var values = lines[i].split(itemSeperator);

Open in new window


instead of do this:
				item.languages.push({
					name : values[0],
					column_type : values[1],
					IsNull : values[2],
					column_default : values[3]
				});

Open in new window


I need to do this:
				item.languages.push({
					itemcount: (total item in the array )
					item1 : values[1],
					item2: values[2], ....
                                         itemn : values[n]
				});

Open in new window

0
Comment
Question by:ethar1
  • 5
  • 3
  • 2
10 Comments
 
LVL 53

Expert Comment

by:COBOLdinosaur
Comment Utility
I am not sure what you are asking.  If what you want is the source for the number of items in the list then:
itemcount: (values.length)

Cd&
0
 

Author Comment

by:ethar1
Comment Utility
how can generate item programmatically
based on items count
0
 

Author Comment

by:ethar1
Comment Utility
instead of
name : values[0],

I want to use
[item#n] :  values[n],
0
 
LVL 30

Accepted Solution

by:
Alexandre Simões earned 500 total points
Comment Utility
I think it should be something like:
var lang = {};
lang.itemcount = values.length;
for (var i = 0; i < lang.itemcount; i++) {
	lang['item' + (i+1)] = values[i];
};

item.languages.push(lang);

Open in new window


I didn't actually test it but if it doesn't work it shouldn't be far :)
0
 

Author Comment

by:ethar1
Comment Utility
I need to do
var lang = {};
	lang.itemcount = values.length;
	for (var i = 0; i < lang.itemcount; i++) {
	'item' + i.toString() : values[i];
	};

Open in new window

0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 53

Expert Comment

by:COBOLdinosaur
Comment Utility
You don't need the toString().  The concatenation will cause the integer to be re-typed to string.

Cd&
0
 
LVL 30

Expert Comment

by:Alexandre Simões
Comment Utility
But didn't my code work?
What's the problem?

item1, item2, itemN... are properties of the same object that contains the itemcount.
In my code I'm adding these properties dynamically:

lang['item' + (i+1)] = values[i];

Open in new window


This line adds a property to the lang object called: 'item' + (i+1)
and sets its value as:
values[i]

Open in new window


This was what I understood that you wanted...
0
 

Author Comment

by:ethar1
Comment Utility
is this code add property  item1 : values[1] ??
0
 
LVL 30

Expert Comment

by:Alexandre Simões
Comment Utility
json objects store properties in an array.
Because of this you can get and set a property by calling:
var a = {};
a["prop1"] = 123;

alert(a["prop1"]);  // 123
alert(a.prop1);   // 123

Open in new window

0
 

Author Comment

by:ethar1
Comment Utility
in this code
				item.languages.push({
					name : values[0],
					column_type : values[1],
					IsNull : values[2],
					column_default : values[3]
				}); 

Open in new window


its defined the columns name ( name , column_type ,IsNull,column_default ) for known array.


instead I need to push unknown array ( dynamic array)
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Avoid defining the variables in the global scope; trying to define them in a local function scope. Because:   • Look-up is performed every time a variable is accessed.   • Variables are resolved backwards from most specific to least specific scope…
In this article, we'll look how to sort an Array in JavaScript, including the more advanced techniques of sorting a collection of records either ascending or descending on two or more fields. Basic Sorting of Arrays First, let's look at the …
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…

728 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

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now