0

I have some values that come randomized to an variable. Now i want to add every value to each other to get an total sum but the loop wont add them together.

The index variable work when i console log it. but not the total sum of a current value and the index value. Any tips ?

This is the loop // The indexValue is values I get from an array//

  var indexValue = index;  // Random number from 1 - 10
    var totalSum = 0;

   for(var x = 0; x <indexValue; x++){

   var currentValue = index[x];
   totalSum += currentValue;
    }

    console.log(totalSum);
4
  • 1
    I think it should be var indexValue = index.length; Commented Feb 6, 2013 at 17:53
  • What is index? What exactly does it mean if a variable "does not work"? Commented Feb 6, 2013 at 17:53
  • 1
    on your first line, were u intending to do "var indexValue = index.length" ? Commented Feb 6, 2013 at 17:56
  • have tried with index.length. But no luck Commented Feb 6, 2013 at 18:04

2 Answers 2

2

I'm assuming since you're referencing index[x] that index is an array. If so, you are assigning the wrong value to indexValue. Try this:

var indexValue = index.length;

What this does is assign the length of the array to the variable indexValue. Now the for loop will run from 0 to n where n is the length of the array.

This should get you the values you need.

Hope this helps.

EDIT:

Below is a link to a jsFiddle I created with your example and the code explained:

jsFiddle

var index = [1,2,3,4,5];  

var indexValue = index.length;  // It's imperative that this is an array
var totalSum = 0;

for(var x = 0; x <indexValue; x++){
    totalSum += index[x];
}

alert(totalSum);

The code above is a modified version of what you posted. The current value is not needed and has been removed. In this case, I created an array and stored the values in index. The length is computed, and the values are added together.

For the easy sake of testing, I changed console.log(totalSum); to alert(totalSum);. It will produce the same value just the same.

Just a reference note on console.log. Some browsers (mainly IE) who do not attach the debugger to the process automatically without a page refresh will through an error as console will be undefined. Here is a quick fix for that:

if(window.console && window.console.log) {
    console.log(totalSum);
} 

This checks that (a) the console object is attached to the global window object and (b) that the log object of console is attached to the console object.

Sign up to request clarification or add additional context in comments.

4 Comments

It still gives me value = 0 ; but if I console.log the index, it shows me the current value. but totalSum 0
@Dymond See the edit above. Are you sure index is an array? You're original comment // Random number from 1 - 10 leads me to believe that it is not.
aaa ofcourse. now when you said it. Its actually an string array, that I put values in with an loop . and then i get the value with getElement.. but when there are back. its a singel value, and not an array. So what I have to do is save the values in an array, and then call them with your function.. thank you :) now i really need the noob badge here :)
@Dymond Haha. Nah its all good buddy. I'm glad it's working for you. Good luck and happy coding! :)
0

you probably want something like this:

var sum = 0;
for (var i=0; i < index.length; i++) {
    sum += index[i];
}
console.log(sum);

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.