🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.javascript
Article #51603

Re: Operator ||

#51603
From: nkab
Date: Wed, 18 Nov 2015 09:30
46 lines
3154 bytes
W dniu środa, 18 listopada 2015 10:11:38 UTC+1 użytkownik Cezary Tomczyk napisał:
> W dniu 11/18/2015 o 9:21 AM, nkab@toya.net.pl pisze:
> > W dniu wtorek, 17 listopada 2015 15:40:55 UTC+1 użytkownik Romek napisał:
> >> Witam,
> >>
> >> język javascript jest mi zupełnie obcy. Pewne potrzebne mi informacje znalazłem bibliotece jQuery. Ponieważ nie rozumiem zapisu proszę o pomoc i wyjaśnienie. W funkcji jest zapis :
> >>
> >> jQuery.fn.extend({
> >> 	offset:
> >> [...]
> >> return {
> >>   top: box.top + (win.pageYOffset || docElem.scrollTop)-(docElem.clientTop || 0),
> >>   left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0)
> >> [...]
> >>
> >>
> >> jak jest wartość wyrażenia (win.pageYOffset || docElem.scrollTop) lub (docElem.clientTop || 0). Z dokumentacji JS wynika, że operator OR zwraca wartości TRUE, FALSE i nie mogę tego dopasować do powyższego wyrażenie. Czego nie wiem. Proszę o krótkie wyjaśnienie.
> >>
> >> Romek
> >
> > Zamień sobie to na cyferki a wszystko ci się rozjaśni:
> >
> > (win.pageYOffset || docElem.scrollTop)
> >
> > alert(win.pageYOffset)  np. da 200
> > alert(docElem.scrollTop)  np. da 100
> >
> > (200 or 100)
> 
> Nie. Lewa strona jest konwertowana do typu Boolean i jeśli jest true, to 
> jest zwracana jego wartość. W przeciwnym wypadku prawa strona jest zwracana.
> 
> W tym przypadku Boolean(200) daje true, a więc 200 jest zwracane. Gdyby 
> win.pageYOffset było undefined, to Boolean(undefined) daje false i prawa 
> strona jest zwracana.
> 
> -- 
> Cezary Tomczyk
> http://www.ctomczyk.pl/

Dzięki.

Minie bardziej chodziło o to jak pytający praktycznie
powinien analizować kod i jak najłatwiej uzyska odpowiedź na warunek.

Andrzej.
Technical Details
Message-ID: <7216a2c7-5a5a-4d25-bd92-fedcc767a8b4@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!i2no4609238igv.0!news-out.google.com!z49ni423qgd.1!nntp.google.com!f78no543944qge.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <8c1d2c90-f115-4a39-b7f2-946ba4cd634a@googlegroups.com> <66995a5a-40f9-47b3-b75c-e69da8b2f137@googlegroups.com> <5f30c$564c40c9$6def49cc$17088@nntpswitch.blueworldhosting.com>

Show Full Headers
Complete Article Headers
X-Received: by 10.182.227.137 with SMTP id sa9mr379394obc.44.1447839005146;        Wed, 18 Nov 2015 01:30:05 -0800 (PST)
X-Received: by 10.140.99.69 with SMTP id p63mr8205qge.1.1447839005041; Wed, 18 Nov 2015 01:30:05 -0800 (PST)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!i2no4609238igv.0!news-out.google.com!z49ni423qgd.1!nntp.google.com!f78no543944qge.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.javascript
Date: Wed, 18 Nov 2015 01:30:04 -0800 (PST)
In-Reply-To: <5f30c$564c40c9$6def49cc$17088@nntpswitch.blueworldhosting.com>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=31.182.92.26; posting-account=xnOwqAoAAAAJ48pUkVrL2a6sJByqdB8s
NNTP-Posting-Host: 31.182.92.26
References: <8c1d2c90-f115-4a39-b7f2-946ba4cd634a@googlegroups.com> <66995a5a-40f9-47b3-b75c-e69da8b2f137@googlegroups.com> <5f30c$564c40c9$6def49cc$17088@nntpswitch.blueworldhosting.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <7216a2c7-5a5a-4d25-bd92-fedcc767a8b4@googlegroups.com>
Subject: Re: Operator ||
From: nkab@toya.net.pl
Injection-Date: Wed, 18 Nov 2015 09:30:05 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit