Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #32878
| From | tony@mountifield.org (Tony Mountifield) |
|---|---|
| Newsgroups | comp.lang.javascript |
| Subject | Re: Understanding someone's code |
| Date | 2017-03-30 13:44 +0000 |
| Organization | Software Insight Ltd., Winchester, UK |
| Message-ID | <obj240$rdp$1@softins.softins.co.uk> (permalink) |
| References | <WumdnYlb48xrFUHFnZ2dnUU7-K_NnZ2d@westnet.com.au> <XnsA7487B53461A9eejj99@194.109.6.166> <obir0r$p3e$1@softins.softins.co.uk> <XnsA7488E8B9765eejj99@194.109.6.166> |
In article <XnsA7488E8B9765eejj99@194.109.6.166>,
Evertjan. <exxjxw.hannivoort@inter.nl.net> wrote:
> tony@mountifield.org (Tony Mountifield) wrote on 30 Mar 2017 in
> comp.lang.javascript:
>
(original statement re-added for comparison)
> >> b.getPageInView && (a = b.getPageInView()) && (F = a,
> >> document.getElementById("pageNumber").value = a);
> >> > if (b.getPageInView) {
> >> > a = b.getPageInView();
> >> > if (a) {
> >> > F = a;
> >> > document.getElementById("pageNumber").value = a;
> >> > }
> >> >}
> >>
> >> No.
> >
> > Why not? It looks equivalent to me, in that specific case.
>
> Incorrect, did you test it?
It was simple enough to understand by inspection.
> After:
>
> F = 7;
> a = 0;
> if (a) {
> F = a;
> document.getElementById("pageNumber").value = a;
> }
>
> F will be 7,
>
> while after:
>
> F = 7;
> a = 0;
> F = (F = a) && (document.getElementById("pageNumber").value = a);
>
> F will be 0;
What's an initial assignment to F got to do with it? That wasn't in the
original example. Nor was your outer assignment to F in the third line.
Let's consider the original code piece by piece:
b.getPageInView && (a = b.getPageInView()) && (F = a, document.getElementById("pageNumber").value = a);
1. Evaluate b.getPageInView. If false, do nothing further due to short-
circuit evaluation, and discard its value, since it is not assigned.
2. Invoke b.getPageInView() and assign its value to a. If the assigned
value was false, do nothing further.
3. Assign the value of a to F.
4. Assign the value of a to document.getElementById("pageNumber").value
You will find exactly the same steps describe the OP's interpretation:
if (b.getPageInView) {
a = b.getPageInView();
if (a) {
F = a;
document.getElementById("pageNumber").value = a;
}
}
> > If you believe
> > it to be a wrong interpretation of the original code, why not provide
> > a better one
>
> This is not a church,
> faith does not come into coding,
> faith being nonsense anyway.
s/believe/consider/ or s/believe/think/. I was using "believe" in one of
those meanings, nothing to do with faith. Sounds like you have an axe to
grind regarding the latter.
> > , instead of the unrelated and simple example below?
>
> I try to teach to the best of my knowledge,
> not take over the coding,
> this NG not being a helpdesk.
That's true, it isn't. But if you volunteer to respond, it doesn't help
if you don't answer the question asked.
Cheers
Tony
--
Tony Mountifield
Work: tony@softins.co.uk - http://www.softins.co.uk
Play: tony@mountifield.org - http://tony.mountifield.org
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Understanding someone's code Andrew Poulos <ap_prog@hotmail.com> - 2017-03-30 15:26 +1100
Re: Understanding someone's code Andrew Poulos <ap_prog@hotmail.com> - 2017-03-30 18:48 +1100
Re: Understanding someone's code "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2017-03-30 12:07 +0200
Re: Understanding someone's code tony@mountifield.org (Tony Mountifield) - 2017-03-30 11:43 +0000
Re: Understanding someone's code "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2017-03-30 14:00 +0200
Re: Understanding someone's code tony@mountifield.org (Tony Mountifield) - 2017-03-30 13:44 +0000
Re: Understanding someone's code "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2017-03-30 19:07 +0200
Re: Understanding someone's code JJ <jj4public@vfemail.net> - 2017-03-30 18:58 +0700
Re: Understanding someone's code Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2017-03-30 18:13 +0200
Re: Understanding someone's code Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2017-03-30 18:13 +0200
Re: Understanding someone's code John G Harris <niam@jghnorth.org.uk.invalid> - 2017-03-31 10:30 +0100
Re: Understanding someone's code Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2017-04-02 14:41 +0200
Re: Understanding someone's code John G Harris <niam@jghnorth.org.uk.invalid> - 2017-04-02 19:05 +0100
Re: Understanding someone's code Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2017-04-10 05:00 +0200
Re: Understanding someone's code John G Harris <niam@jghnorth.org.uk.invalid> - 2017-04-10 10:03 +0100
csiph-web