var has_dup = false;
has_dup[i] = true;
var dups=0;
var dups;
Re: Learning arrays
By: Mortifis to All on Wed Jul 17 2019 11:09:38
var has_dup = false;
This is not an array, so later when you do this:
has_dup[i] = true;
you're setting property [i] on a boolean to 'true'. Interestingly this doesn't generate an
error, but it also doesn't store that property/value.
Instead of this:
var has_dup = false;
you probably want this:
var has_dup = [];
Note that you're also declaring 'dups' twice:
var dups=0;
var dups;
So by the time your script gets down to business, 'dups' is undefined and your 'dups++'
won't work. (Just remove that 'var dups;' line.)
Your nested for loop could be sped up a little bit:
for (var n = i + 1; n <= lastuser; n++) {
You've already dupe-checked all users up to i, and you want to start with users beginning at
i + 1. This would also remove the need for the 'if(u.number == d.number) continue;' check.
I could go on with some other suggestions, but I'll stop here for now.
Sysop: | Chris Crash |
---|---|
Location: | Huntington Beach, CA. |
Users: | 578 |
Nodes: | 8 (0 / 8) |
Uptime: | 29:05:29 |
Calls: | 10,736 |
Calls today: | 1 |
Files: | 5 |
Messages: | 443,191 |
Posted today: | 1 |