<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Gallenanfall on Medium]]></title>
        <description><![CDATA[Stories by Gallenanfall on Medium]]></description>
        <link>https://medium.com/@gallenanfall?source=rss-46aa78a37a14------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*FRIF-PK4lzJ2KljmMGZ6Vg.jpeg</url>
            <title>Stories by Gallenanfall on Medium</title>
            <link>https://medium.com/@gallenanfall?source=rss-46aa78a37a14------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Mon, 18 May 2026 11:46:21 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@gallenanfall/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Array.isArray([]) vs. Object.prototype.toString.call([])]]></title>
            <link>https://medium.com/@gallenanfall/array-isarray-vs-object-prototype-tostring-call-f7d53c6abcc3?source=rss-46aa78a37a14------2</link>
            <guid isPermaLink="false">https://medium.com/p/f7d53c6abcc3</guid>
            <category><![CDATA[mental-health]]></category>
            <category><![CDATA[life]]></category>
            <category><![CDATA[health]]></category>
            <category><![CDATA[humor]]></category>
            <category><![CDATA[coronavirus]]></category>
            <dc:creator><![CDATA[Gallenanfall]]></dc:creator>
            <pubDate>Sun, 20 Dec 2020 03:35:37 GMT</pubDate>
            <atom:updated>2020-12-20T03:35:37.559Z</atom:updated>
            <content:encoded><![CDATA[<h3>How to Check for an Array in JavaScript</h3><h4>JavaScript arrays are a type of object, so typeof [] returns &quot;object&quot; — not very helpful to see if you have an array. Here are 5 methods to check whether a JavaScript object is an array.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*fO99mJxflsimdcc7" /><figcaption>Photo by JJ Ying on Unsplash</figcaption></figure><p>How to Check for an Array in JavaScript 💙 Chillhop &amp; Code 📺 Programming Tutorials</p><p><a href="https://cartaodosus.info/video.php?video=videos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1zlu-19.php">https://cartaodosus.info/video.php?video=videos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1zlu-19.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-SK-Sturm-Graz-SKN-St.-Polten-v-en-gb-1wfi-12.php">ttp://amik.closa.com/vux/v-ideos-SK-Sturm-Graz-SKN-St.-Polten-v-en-gb-1wfi-12.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-barselona-v-valensiia-v-yt2-1jeb-13.php">ttp://mid.actiup.com/fjl/Video-barselona-v-valensiia-v-yt2-1jeb-13.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1oim-3.php">ttps://cartaodosus.info/video.php?video=Video-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1oim-3.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-altay-v-akhisar-belediyespor-v-tr-tr-1kgo-8.php">ttp://great.gruposio.es/mfo/Video-altay-v-akhisar-belediyespor-v-tr-tr-1kgo-8.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-barselona-v-valensiia-v-yt2-1kas-18.php">ttp://mid.actiup.com/fjl/videos-barselona-v-valensiia-v-yt2-1kas-18.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-maritimu-v-belenensesh-v-yt2-1ytu-7.php">ttp://amik.closa.com/vux/v-ideos-maritimu-v-belenensesh-v-yt2-1ytu-7.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-altay-v-akhisar-belediyespor-v-tr-tr-1lty-12.php">ttp://great.gruposio.es/mfo/v-ideos-altay-v-akhisar-belediyespor-v-tr-tr-1lty-12.php<br></a>h<a href="http://mid.actiup.com/fjl/video-barselona-v-valensiia-v-yt2-1vfi-1.php">ttp://mid.actiup.com/fjl/video-barselona-v-valensiia-v-yt2-1vfi-1.php<br></a>h<a href="https://cartaodosus.info/video.php?video=v-ideos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1dqe-17.php">ttps://cartaodosus.info/video.php?video=v-ideos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1dqe-17.php<br></a>h<a href="http://amik.closa.com/vux/Video-maritimu-v-belenensesh-v-yt2-1xqo-2.php">ttp://amik.closa.com/vux/Video-maritimu-v-belenensesh-v-yt2-1xqo-2.php<br></a>h<a href="https://test.activesilicon.com/wah/videos-Al-Kuwait-Al-Arabi-Kuwait-v-en-gb-1nlx-13.php">ttps://test.activesilicon.com/wah/videos-Al-Kuwait-Al-Arabi-Kuwait-v-en-gb-1nlx-13.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-SV-Zulte-Waregem-STVV-v-en-gb-1pqr-1.php">ttp://gd.vidrio.org/hsx/videos-SV-Zulte-Waregem-STVV-v-en-gb-1pqr-1.php<br></a>h<a href="http://mid.actiup.com/fjl/video-barselona-v-valensiia-v-yt2-1kjd-19.php">ttp://mid.actiup.com/fjl/video-barselona-v-valensiia-v-yt2-1kjd-19.php<br></a>h<a href="http://great.gruposio.es/mfo/video-altay-v-akhisar-belediyespor-v-tr-tr-1sjp-10.php">ttp://great.gruposio.es/mfo/video-altay-v-akhisar-belediyespor-v-tr-tr-1sjp-10.php<br></a>h<a href="http://amik.closa.com/vux/Video-maritimu-v-belenensesh-v-yt2-1axz-18.php">ttp://amik.closa.com/vux/Video-maritimu-v-belenensesh-v-yt2-1axz-18.php<br></a>h<a href="http://mid.actiup.com/fjl/v-ideos-Cracovia-Krakow-KS-Lechia-Gdansk-v-en-gb-1qmt-19.php">ttp://mid.actiup.com/fjl/v-ideos-Cracovia-Krakow-KS-Lechia-Gdansk-v-en-gb-1qmt-19.php<br></a>h<a href="http://gd.vidrio.org/hsx/Video-Osasuna-Villarreal-v-en-gb-1dxe-1.php">ttp://gd.vidrio.org/hsx/Video-Osasuna-Villarreal-v-en-gb-1dxe-1.php<br></a>h<a href="http://great.gruposio.es/mfo/video-altay-v-akhisar-belediyespor-v-tr-tr-1riz-1.php">ttp://great.gruposio.es/mfo/video-altay-v-akhisar-belediyespor-v-tr-tr-1riz-1.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-maritimu-v-belenensesh-v-yt2-1dng-10.php">ttp://amik.closa.com/vux/v-ideos-maritimu-v-belenensesh-v-yt2-1dng-10.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-maritimu-v-belenensesh-v-yt2-1bfi-7.php">ttp://amik.closa.com/vux/v-ideos-maritimu-v-belenensesh-v-yt2-1bfi-7.php<br></a>h<a href="http://great.gruposio.es/mfo/video-dinamo-zagreb-v-varazdin-v-hr-hr-1qtu-6.php">ttp://great.gruposio.es/mfo/video-dinamo-zagreb-v-varazdin-v-hr-hr-1qtu-6.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-SV-Zulte-Waregem-STVV-v-en-gb-1fzd-17.php">ttps://cartaodosus.info/video.php?video=video-SV-Zulte-Waregem-STVV-v-en-gb-1fzd-17.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-Osasuna-Villarreal-v-en-gb-1psk-5.php">ttp://gd.vidrio.org/hsx/videos-Osasuna-Villarreal-v-en-gb-1psk-5.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-Cracovia-Krakow-KS-Lechia-Gdansk-v-en-gb-1luh-16.php">ttp://mid.actiup.com/fjl/videos-Cracovia-Krakow-KS-Lechia-Gdansk-v-en-gb-1luh-16.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-Osasuna-Villarreal-v-en-gb-1cwv-13.php">ttp://gd.vidrio.org/hsx/videos-Osasuna-Villarreal-v-en-gb-1cwv-13.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-Cracovia-Krakow-KS-Lechia-Gdansk-v-en-gb-1uvk-8.php">ttp://mid.actiup.com/fjl/videos-Cracovia-Krakow-KS-Lechia-Gdansk-v-en-gb-1uvk-8.php<br></a>h<a href="http://mid.actiup.com/fjl/v-ideos-Flint-Town-United-Aberystwyth-Town-v-en-gb-1hcp-8.php">ttp://mid.actiup.com/fjl/v-ideos-Flint-Town-United-Aberystwyth-Town-v-en-gb-1hcp-8.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-Dinamo-Zagreb-NK-Varazdin-v-en-gb-iwo-.php">ttp://great.gruposio.es/mfo/v-ideos-Dinamo-Zagreb-NK-Varazdin-v-en-gb-iwo-.php<br></a>h<a href="http://mid.actiup.com/fjl/video-Flint-Town-United-Aberystwyth-Town-v-en-gb-1lju-15.php">ttp://mid.actiup.com/fjl/video-Flint-Town-United-Aberystwyth-Town-v-en-gb-1lju-15.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-Al-Kuwait-Al-Arabi-Kuwait-v-en-gb-1bnv-15.php">ttps://test.activesilicon.com/wah/v-ideos-Al-Kuwait-Al-Arabi-Kuwait-v-en-gb-1bnv-15.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-bayer-leverkusen-v-bayern-munchen-v-de-de-1qwc-2.php">ttp://gd.vidrio.org/hsx/v-ideos-bayer-leverkusen-v-bayern-munchen-v-de-de-1qwc-2.php<br></a>h<a href="http://mileno.provecracing.com/xat/v-ideos-mallorca-v-fuenlabrada-v-es-es-1xep-2.php">ttp://mileno.provecracing.com/xat/v-ideos-mallorca-v-fuenlabrada-v-es-es-1xep-2.php<br></a>h<a href="http://amik.closa.com/vux/video-Altay-SK-Akhisarspor-v-en-gb-1aco-.php">ttp://amik.closa.com/vux/video-Altay-SK-Akhisarspor-v-en-gb-1aco-.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-Dinamo-Zagreb-NK-Varazdin-v-en-gb-mmt-.php">ttp://great.gruposio.es/mfo/Video-Dinamo-Zagreb-NK-Varazdin-v-en-gb-mmt-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-SV-Zulte-Waregem-STVV-v-en-gb-1vqc-13.php">ttps://cartaodosus.info/video.php?video=video-SV-Zulte-Waregem-STVV-v-en-gb-1vqc-13.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-bayer-leverkusen-v-bayern-munchen-v-de-de-1kjl-9.php">ttp://gd.vidrio.org/hsx/video-bayer-leverkusen-v-bayern-munchen-v-de-de-1kjl-9.php<br></a>h<a href="http://mileno.provecracing.com/xat/videos-mallorca-v-fuenlabrada-v-es-es-1rph-3.php">ttp://mileno.provecracing.com/xat/videos-mallorca-v-fuenlabrada-v-es-es-1rph-3.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-Flint-Town-United-Aberystwyth-Town-v-en-gb-1qyu-6.php">ttp://mid.actiup.com/fjl/videos-Flint-Town-United-Aberystwyth-Town-v-en-gb-1qyu-6.php<br></a>h<a href="http://gd.vidrio.org/hsx/Video-bayer-leverkusen-v-bayern-munchen-v-de-de-1eon-15.php">ttp://gd.vidrio.org/hsx/Video-bayer-leverkusen-v-bayern-munchen-v-de-de-1eon-15.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-Dinamo-Zagreb-NK-Varazdin-v-en-gb-esh-.php">ttp://great.gruposio.es/mfo/Video-Dinamo-Zagreb-NK-Varazdin-v-en-gb-esh-.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-mallorca-v-fuenlabrada-v-es-es-1bgf-13.php">ttp://mileno.provecracing.com/xat/Video-mallorca-v-fuenlabrada-v-es-es-1bgf-13.php<br></a>h<a href="http://mileno.provecracing.com/xat/videos-FC-Aarau-FC-Thun-v-en-gb-1fur-13.php">ttp://mileno.provecracing.com/xat/videos-FC-Aarau-FC-Thun-v-en-gb-1fur-13.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-barselona-v-valensiia-v-yt2-1ufw-9.php">ttp://great.gruposio.es/mfo/Video-barselona-v-valensiia-v-yt2-1ufw-9.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-bayer-leverkusen-v-bayern-munchen-v-de-de-1lya-8.php">ttp://gd.vidrio.org/hsx/v-ideos-bayer-leverkusen-v-bayern-munchen-v-de-de-1lya-8.php<br></a>h<a href="http://great.gruposio.es/mfo/video-barselona-v-valensiia-v-yt2-1ypq-14.php">ttp://great.gruposio.es/mfo/video-barselona-v-valensiia-v-yt2-1ypq-14.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-bayer-leverkusen-v-bayern-munchen-v-de-de-1hwf-2.php">ttp://gd.vidrio.org/hsx/v-ideos-bayer-leverkusen-v-bayern-munchen-v-de-de-1hwf-2.php<br></a>h<a href="https://cartaodosus.info/video.php?video=v-ideos-SV-Zulte-Waregem-STVV-v-en-gb-1xle-8.php">ttps://cartaodosus.info/video.php?video=v-ideos-SV-Zulte-Waregem-STVV-v-en-gb-1xle-8.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-Osasuna-Villarreal-v-en-gb-1wyb-8.php">ttps://cartaodosus.info/video.php?video=Video-Osasuna-Villarreal-v-en-gb-1wyb-8.php<br></a>h<a href="http://amik.closa.com/vux/videos-Altay-SK-Akhisarspor-v-en-gb-1giz-5.php">ttp://amik.closa.com/vux/videos-Altay-SK-Akhisarspor-v-en-gb-1giz-5.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-barselona-v-valensiia-v-yt2-1ypl-8.php">ttp://great.gruposio.es/mfo/v-ideos-barselona-v-valensiia-v-yt2-1ypl-8.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-Al-Kuwait-Al-Arabi-Kuwait-v-en-gb-1cui-4.php">ttps://test.activesilicon.com/wah/v-ideos-Al-Kuwait-Al-Arabi-Kuwait-v-en-gb-1cui-4.php<br></a>h<a href="https://cartaodosus.info/video.php?video=v-ideos-Osasuna-Villarreal-v-en-gb-1zhz-5.php">ttps://cartaodosus.info/video.php?video=v-ideos-Osasuna-Villarreal-v-en-gb-1zhz-5.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-barselona-v-valensiia-v-yt2-1fey-13.php">ttp://great.gruposio.es/mfo/Video-barselona-v-valensiia-v-yt2-1fey-13.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-Al-Sareeh-Al-Faisaly-v-en-gb-1bme-.php">ttp://great.gruposio.es/mfo/Video-Al-Sareeh-Al-Faisaly-v-en-gb-1bme-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-Everton-Arsenal-v-en-gb-1ykl-9.php">ttps://cartaodosus.info/video.php?video=videos-Everton-Arsenal-v-en-gb-1ykl-9.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1oeu-17.php">ttp://gd.vidrio.org/hsx/video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1oeu-17.php<br></a>h<a href="http://amik.closa.com/vux/videos-Cape-Town-City-TS-Galaxy-v-en-gb-1nuq-6.php">ttp://amik.closa.com/vux/videos-Cape-Town-City-TS-Galaxy-v-en-gb-1nuq-6.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-diosgyori-v-zalaegerszegi-te-v-hu-hu-1dqx-1.php">ttps://test.activesilicon.com/wah/v-ideos-diosgyori-v-zalaegerszegi-te-v-hu-hu-1dqx-1.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-Everton-Arsenal-v-en-gb-1vcs-9.php">ttps://cartaodosus.info/video.php?video=video-Everton-Arsenal-v-en-gb-1vcs-9.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1dpw-15.php">ttp://gd.vidrio.org/hsx/video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1dpw-15.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1pwd-1.php">ttp://gd.vidrio.org/hsx/video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1pwd-1.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-Everton-Arsenal-v-en-gb-1ssi-9.php">ttps://cartaodosus.info/video.php?video=videos-Everton-Arsenal-v-en-gb-1ssi-9.php<br></a>h<a href="http://amik.closa.com/vux/video-Kaizer-Chiefs-Bloemfontein-Celtic-v-en-gb-1fjg-.php">ttp://amik.closa.com/vux/video-Kaizer-Chiefs-Bloemfontein-Celtic-v-en-gb-1fjg-.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-diosgyori-v-zalaegerszegi-te-v-hu-hu-1bhs-14.php">ttps://test.activesilicon.com/wah/Video-diosgyori-v-zalaegerszegi-te-v-hu-hu-1bhs-14.php<br></a>h<a href="http://amik.closa.com/vux/Video-Kaizer-Chiefs-Bloemfontein-Celtic-v-en-gb-1hko-18.php">ttp://amik.closa.com/vux/Video-Kaizer-Chiefs-Bloemfontein-Celtic-v-en-gb-1hko-18.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-Everton-Arsenal-v-en-gb-1tpm-17.php">ttps://cartaodosus.info/video.php?video=video-Everton-Arsenal-v-en-gb-1tpm-17.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-Everton-Arsenal-v-en-gb-1umk-11.php">ttps://cartaodosus.info/video.php?video=video-Everton-Arsenal-v-en-gb-1umk-11.php<br></a>h<a href="http://amik.closa.com/vux/video-Kaizer-Chiefs-Bloemfontein-Celtic-v-en-gb-1tpe-9.php">ttp://amik.closa.com/vux/video-Kaizer-Chiefs-Bloemfontein-Celtic-v-en-gb-1tpe-9.php<br></a>h<a href="http://mileno.provecracing.com/xat/videos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1rbs-13.php">ttp://mileno.provecracing.com/xat/videos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1rbs-13.php<br></a>h<a href="http://mid.actiup.com/fjl/v-ideos-Al-Sareeh-Al-Faisaly-v-en-gb-1mbl-7.php">ttp://mid.actiup.com/fjl/v-ideos-Al-Sareeh-Al-Faisaly-v-en-gb-1mbl-7.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-levante-v-real-sociedad-v-es-es-1dvj2-7.php">ttps://cartaodosus.info/video.php?video=video-levante-v-real-sociedad-v-es-es-1dvj2-7.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-Flyeralarm-Admira-Rapid-Wien-v-en-gb-1xya-.php">ttp://amik.closa.com/vux/v-ideos-Flyeralarm-Admira-Rapid-Wien-v-en-gb-1xya-.php<br></a>h<a href="https://test.activesilicon.com/wah/videos-Diosgyori-Zalaegerszegi-TE-v-en-gb-zug-.php">ttps://test.activesilicon.com/wah/videos-Diosgyori-Zalaegerszegi-TE-v-en-gb-zug-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-levante-v-real-sociedad-v-es-es-1tyx2-7.php">ttps://cartaodosus.info/video.php?video=Video-levante-v-real-sociedad-v-es-es-1tyx2-7.php<br></a>h<a href="http://gd.vidrio.org/hsx/Video-VVV-Venlo-Twente-v-en-gb-gom-.php">ttp://gd.vidrio.org/hsx/Video-VVV-Venlo-Twente-v-en-gb-gom-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-levante-v-real-sociedad-v-es-es-1hxp2-8.php">ttps://cartaodosus.info/video.php?video=videos-levante-v-real-sociedad-v-es-es-1hxp2-8.php<br></a>h<a href="http://amik.closa.com/vux/Video-Flyeralarm-Admira-Rapid-Wien-v-en-gb-1ccs-11.php">ttp://amik.closa.com/vux/Video-Flyeralarm-Admira-Rapid-Wien-v-en-gb-1ccs-11.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-VVV-Venlo-Twente-v-en-gb-ouh-.php">ttp://gd.vidrio.org/hsx/v-ideos-VVV-Venlo-Twente-v-en-gb-ouh-.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-Diosgyori-Zalaegerszegi-TE-v-en-gb-los-.php">ttps://test.activesilicon.com/wah/v-ideos-Diosgyori-Zalaegerszegi-TE-v-en-gb-los-.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-VVV-Venlo-Twente-v-en-gb-sha-.php">ttp://gd.vidrio.org/hsx/video-VVV-Venlo-Twente-v-en-gb-sha-.php<br></a>h<a href="http://amik.closa.com/vux/video-Flyeralarm-Admira-Rapid-Wien-v-en-gb-1zfn-8.php">ttp://amik.closa.com/vux/video-Flyeralarm-Admira-Rapid-Wien-v-en-gb-1zfn-8.php<br></a>h<a href="https://test.activesilicon.com/wah/videos-Diosgyori-Zalaegerszegi-TE-v-en-gb-kof-.php">ttps://test.activesilicon.com/wah/videos-Diosgyori-Zalaegerszegi-TE-v-en-gb-kof-.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-SV-Zulte-Waregem-STVV-v-en-gb-1saa-13.php">ttp://mileno.provecracing.com/xat/Video-SV-Zulte-Waregem-STVV-v-en-gb-1saa-13.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-levante-v-real-sociedad-v-es-es-1yny2-3.php">ttps://cartaodosus.info/video.php?video=video-levante-v-real-sociedad-v-es-es-1yny2-3.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-Maccabi-Petach-Tikva-Maccabi-Haifa-v-en-gb-ysl-.php">ttp://gd.vidrio.org/hsx/v-ideos-Maccabi-Petach-Tikva-Maccabi-Haifa-v-en-gb-ysl-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-levante-v-real-sociedad-v-es-es-1akh2-7.php">ttps://cartaodosus.info/video.php?video=videos-levante-v-real-sociedad-v-es-es-1akh2-7.php<br></a>h<a href="https://test.activesilicon.com/wah/video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1ain-11.php">ttps://test.activesilicon.com/wah/video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1ain-11.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-flyeralarm-admira-v-rapid-wien-v-at-at-1fax-3.php">ttp://amik.closa.com/vux/v-ideos-flyeralarm-admira-v-rapid-wien-v-at-at-1fax-3.php<br></a>h<a href="https://test.activesilicon.com/wah/video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1zdv-9.php">ttps://test.activesilicon.com/wah/video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1zdv-9.php<br></a>h<a href="http://amik.closa.com/vux/videos-flyeralarm-admira-v-rapid-wien-v-at-at-1ccq-14.php">ttp://amik.closa.com/vux/videos-flyeralarm-admira-v-rapid-wien-v-at-at-1ccq-14.php<br></a>h<a href="https://cartaodosus.info/video.php?video=v-ideos-OFI-Crete-Aris-Thessaloniki-v-en-gb-1kdk-7.php">ttps://cartaodosus.info/video.php?video=v-ideos-OFI-Crete-Aris-Thessaloniki-v-en-gb-1kdk-7.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-Maccabi-Petach-Tikva-Maccabi-Haifa-v-en-gb-uxb-.php">ttp://gd.vidrio.org/hsx/video-Maccabi-Petach-Tikva-Maccabi-Haifa-v-en-gb-uxb-.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1tly-6.php">ttps://test.activesilicon.com/wah/Video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1tly-6.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1nwo-17.php">ttps://cartaodosus.info/video.php?video=video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1nwo-17.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-Maccabi-Petach-Tikva-Maccabi-Haifa-v-en-gb-rik-.php">ttp://gd.vidrio.org/hsx/v-ideos-Maccabi-Petach-Tikva-Maccabi-Haifa-v-en-gb-rik-.php<br></a>h<a href="http://amik.closa.com/vux/video-flyeralarm-admira-v-rapid-wien-v-at-at-1dgb-11.php">ttp://amik.closa.com/vux/video-flyeralarm-admira-v-rapid-wien-v-at-at-1dgb-11.php<br></a>h<a href="http://mileno.provecracing.com/xat/v-ideos-SV-Zulte-Waregem-STVV-v-en-gb-1hkn-2.php">ttp://mileno.provecracing.com/xat/v-ideos-SV-Zulte-Waregem-STVV-v-en-gb-1hkn-2.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1sjz-3.php">ttps://test.activesilicon.com/wah/v-ideos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1sjz-3.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1hno-2.php">ttps://cartaodosus.info/video.php?video=Video-OFI-Crete-Aris-Thessaloniki-v-en-gb-1hno-2.php</a></p><blockquote>“Arrays are list-like objects whose prototype has methods to perform traversal and mutation operations.” — MDN Docs</blockquote><p>For primitive types, the typeof keyword usually works pretty well, but the typeof an array is &quot;object&quot;: typeof [] === object // true.</p><p>While that makes sense (arrays are a built-in type of JavaScript object, after-all), it is not useful for differentiating arrays from other objects.</p><p>Plus, getting &quot;object&quot; from typeof could indicate a null value.</p><p>Thankfully, there are many ways to check for a JavaScript array:</p><ul><li>Method 1) Array.isArray([])</li><li>Method 2) Object.prototype.toString.call([])</li><li>Method 3) [] instanceof Array</li><li>Method 4) [].constructor</li><li>Method 5) &amp;&amp; with [].constructor</li></ul><p>In this article, I’ll explain the pros and cons of each approach.</p><h3>Method 1: Array.isArray([])</h3><p>ECMAScript 5 (ES5) introduced the Array.isArray() method to check for an array, since typeof will not be able to differentiate arrays from other objects, such as the built-in objects Date and RegExp.</p><p>Using Array.isArray() is also useful for making sure that our object is not null, as null has the typeof &quot;object&quot; due to a long-standing bug.</p><p>Here is an example of checking for an array using Array.isArray([]):</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/690/1*aJ_-wS6Ez2iws8y4BKbHRg.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><h3>Method 2: Object.prototype.toString.call([])</h3><p>The verbose JavaScript statement Object.prototype.toString.call() can differentiate between arrays and other types of objects, because it returns a string that specifies the object type in more detail than typeof.</p><p>Because this method will work for any object, I call it the best way to type check in JavaScript. Here is an example:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*KyTGgltGp_Fm0CGv96KGEg.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><p>While verbose, this method will work for any primitive type and for any object. It always returns the name of the constructor for the variable.</p><p>Put another way, Object.prototype.toString.call() is sort-of like instanceof in reverse, though it works fine inside of iframes.</p><p>The behavior of the above isArray() function should be identical to the built-in Array.isArray() function.</p><p>One thing to note here is that typeof {} returns &quot;object&quot; (lowercase), but Object.prototype.toString.call({}).slice(8,-1) returns &quot;Object&quot; (uppercase) for an object {} and &quot;Array&quot; (uppercase) for an array [].</p><p>As with all of these methods, this method will not work if the variable has not yet been declared. I’ll address checking for undeclared variables later.</p><h3>Method 3: [] instanceof Array</h3><p>Using the keyword instanceof can be used to check for arrays or any type of JavaScript object.</p><blockquote>“The instanceof operator tests to see if the prototype property of a constructor appears anywhere in the prototype chain of an object.” — MDN Docs</blockquote><p>The syntax is straightforward, as shown in this code example:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/714/1*I4zA-Zz40Ed_9tEYfTmmfA.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><p>Watch out though, iframes can break this behavior, as explained in the Mozilla Developer Network documentation for Array.isArray:</p><blockquote>instanceof vs isArray</blockquote><blockquote>When checking for [an] Array instance, Array.isArray is preferred over instanceof because it works through iframes. — MDN Docs</blockquote><p>That means that we may not want to use instanceof to check for an array at all, just in case our JavaScript code ends up running inside an iframe.</p><h3>Method 4: [].constructor</h3><p>For completeness, I want to mention a method similar to instanceof — calling the .constructor property of a JavaScript object.</p><p>The .constructor property will return the constructor function, which for an array will be the function Array() (i.e. the JavaScript class Array).</p><p>Accessing the .name property of that function will give the string &quot;Array&quot;, which can be used to form a simple check for the presence of an array.</p><p>Since the .constructor property returns function Array() (i.e. the JavaScript class Array), you can also compare it directly to the global Array object (which is what is referenced by the returned function Array()).</p><p>In other words, you don’t actually have to use the .name property; [].constructor===Array is equivalent to [].constructor.name===&quot;Array&quot;.</p><p>Here is a code example:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/886/1*vDv4TkJ4FG0fS6HosDiakA.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><p>Similar to Object.prototype.toString.call(), accessing the .constructor property will work for any type of JavaScript value, including primitives — though you can’t access .constructor for undefined or null values.</p><p>(Note that the instanceof keyword will work for objects, but not for primitives. And, of course, instanceof is bugged in iframes.)</p><p>As we see above, using .constructor without a null check results in a TypeError for both null and undefined — a downside compared to Array.isArray(), which would just return false for those two values.</p><p>And, as with any of the methods covered so far, undeclared variables will throw a ReferenceError if you try to access them.</p><h4>A word of warning: .constructor is mutable</h4><p>Before moving on, it is worthwhile to note that .constructor is not robust, because it is an object property that can be overwritten at a later time.</p><blockquote>“Just bear in mind that if you by any reason overwrite your constructor via prototype that arr.constructor === Array test will return false. Array.isArray(arr) still returns true though.” – ghaschel in his Stack Overflow answer</blockquote><p>So just remember that an object’s .constructor property is “mutable” — it could have been changed somewhere in the code from its original value.</p><h3>Method 5: &amp;&amp; and [].constructor (null check! 😄)</h3><p>Here is a neat one-liner that will check for a non-null value at the same time that you check for an array: [] &amp;&amp; [].constructor === Array.</p><p>Both null and undefined are falsy values, meaning they evaluate to false in conditional statements, but all objects are truthy, including empty arrays. Checking [] &amp;&amp; [].constructor === Array will return false for null or undefined values, while .constructor alone would throw an error.</p><p>Including the logical AND (&amp;&amp;) operator has the advantage of avoiding the TypeError that occurs because null and undefined have no properties. This works because &amp;&amp; is a “short-circuit operator.” By using the logical AND (&amp;&amp;), we check that the value is truthy before attempting to access the .constructor property. Here is a code example:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*9We0Pt4lUNUETDClQJt1RA.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><p>To improve code-readability, you might consider making the null check explicit using loose equality: [] != null &amp;&amp; [].constructor. Using != (the loose equality operator) means null and undefined equal each other.</p><p>An even more explicit check would use strict equality: [] !== null &amp;&amp; [] !== undefined &amp;&amp; [].constructor === Array. Many JavaScript programmers prefer to never use loose equality, since the rules for == are confusing.</p><p>Using &amp;&amp; with .constructor effectively works the same way for null and undefined as Array.isArray() does: it returns false, as you would hope.</p><p>However, undeclared variables will still throw a ReferenceError when trying to access the .constructor property. You can use typeof to check that the value is not &quot;undefined&quot; before the array check to solve that problem.</p><h3>What if the array variable is actually undeclared?</h3><p>You may be unsure if the variable that may be an array has actually been declared yet. Let me talk briefly about checking for undeclared arrays.</p><p>As a reminder, accessing a variable that has not been declared will throw a ReferenceError, while a variable that has been declared but not assigned a specific value will have the value of undefined.</p><p>Thankfully, the typeof keyword will return &quot;undefined&quot; for a variable that has not yet been declared, same as it will for the value undefined, but without throwing a ReferenceError because the variable hadn’t been .</p><p>That means we can wrap Array.isArray() inside of a typeof call in order to make it robust against undeclared variables. Here is an example:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/824/1*cmUsM6Yn0LtMsnRN8xrhQg.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><p>Alternatively, we could use a try...catch block, catching the potential ReferenceError, but typeof works just as well for undeclared variables.</p><h3>How to check for an empty array in JavaScript?</h3><p>If instead we want to check to see if an array may be empty, we can check its .length property — an empty array has .length of 0.</p><p>Again, we need to be sure that we are working with a declared variable that has already been assigned a value that is definitely an array.</p><p>But, assuming we got true from Array.isArray([]), then [].length &gt; 0 will confirm that our array is not empty. Here’s a code snippet:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*d5RFqukZIn0vT74xOl9F9w.png" /><figcaption>View raw code as a GitHub Gist</figcaption></figure><p>Again, we are taking advantage of &amp;&amp; working as the short-circuit operator. Because it “short-circuits” on false statements, we never reach the .length call in the example above. That’s exactly what we want, because .length won’t work on most primitives like numbers or other types of objects.</p><h3>Performance Testing: What’s the fastest way to check for an array in JavaScript?</h3><p>Developer Mark Penner (mpen) used jsPerf to compare various methods of checking for an array in JavaScript.</p><p>His results show that one popular method is 20% slower than the others — though the difference is negligible, since the results are so fast.</p><p>Here is what I got when I ran his jsPerf test suite a few months back:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*n9r4tjvV_m5RdLfBxQ0RnQ.png" /><figcaption>These jsPerf test results show that Object.prototype.toString.call([]) is about 20% slower than other methods, such as Array.isArray().</figcaption></figure><p>(Author’s note: jsPerf is currently down pending some configuration to relaunch it. I hope the authors get it working again soon. 🙏)</p><p>The summary is that Array.isArray() is as fast as .constructor or instanceof, but Object.prototype.toString.call([]) is slower.</p><p>The results support using Array.isArray() by default, though your personal preference could be using .constructor with a null check.</p><p>But if you’re a fan of Object.prototype.toString.call([]) — don’t sweat it! The differences show that this slightly-slower method is still very fast: over 700,000,000 operations per second on my home PC.</p><p>So unless you are making trillions of array checks, you won’t see a significant difference in your code’s speed by swapping any one method for another.</p><h3>Conclusion: How to Check for a JavaScript Array</h3><p>Because the keyword typeof returns &quot;object&quot; for null and all objects — including arrays — checking for arrays requires another tool.</p><h4>Array-specific methods</h4><p>The ES5 helper method Array.isArray() will quickly and simply tell you whether any JavaScript variable is an array: Array.isArray([]) // true, and it works for null and undefined(but not undeclared variables).</p><p>That Array.isArray() method is widely-supported across all browsers, since Internet Explorer 9, as it was part of the ECMAScript 5 specification.</p><p>You may see instanceof used: [] instanceof Array // true, but instanceof is not recommend as it does not work inside of iframes.</p><h4>Methods that work for any object</h4><p>There are several methods that are useful for checking for arrays because they can be used to determine the type of any JavaScript object.</p><p>The more generic method Object.prototype.toString.call([]) // &quot;[object Array]&quot; will tell you what type of object any value is, including primitives.</p><p>In order to just capture the type, that string can be processed with .slice(): Object.prototype.toString.call([]).slice(8,-1) // Array</p><p>Similarly, the .constructor property will return the constructing function of a JavaScript value. For arrays, this is the built-in global function Array().</p><p>That function can be compared to the global object (i.e.Array), or the constructor function’s .name property can be accessed as a string: [].constructor.name // &quot;Array&quot;.</p><p>However, .constructor has the drawback that you could assign a new value to it, thus negating your array check: [].constructor = 3 // valid</p><h4>Checking for undeclared arrays</h4><p>The keyword typeof will not differentiate arrays from other objects, though typeof remains useful for screening out undeclared variables.</p><p>When the typeof keyword returns &quot;object&quot; then we know the variable has been declared and assigned either an object or a null value.</p><p>Meanwhile, typeof will return &quot;undefined&quot; for undeclared variables instead of throwing a ReferenceError, making it useful to check typeof first if you think you might be working with an undeclared variable.</p><p>Once we know the variable is declared using typeof (whether === &quot;object&quot; or !== &quot;undefined&quot;), we can use Array.isArray() with certainty.</p><h4>Checking for empty arrays</h4><p>Finally, when we are sure we have an array (i.e. when Array.isArray() returns true), we can check if the array is empty using .length.</p><p>A .length of 0 indicates an empty JavaScript array [] , while an array with .length &gt; 0 indicates a non-empty array.</p><p>Note that the empty array [] is truthy, meaning it returns true when evaluated as a Boolean. ([] is truthy because all objects are truthy.)</p><h4>The best method to check for an array</h4><p>I covered 5 different methods of checking for a JavaScript array. I generally use Array.isArray() when I’m coding for several reasons:</p><ul><li>Array.isArray() is fast and broadly-supported.</li><li>Array.isArray() is explicit, making your code more readable.</li><li>Array.isArray() returns false for null and undefined.</li></ul><p>Sometimes, I’ll wrap my array check inside a if(typeof !== &quot;undefined&quot;) statement in the rare case that I am worried about undeclared variables.</p><p>But otherwise, I’m just gonna use Array.isArray() — it just works.</p><p>Now get out there and check for arrays confidently!</p><p>Happy coding! 💻🎶👓💯🤩</p><h3>Further reading</h3><ul><li>Code With Hugo covers Array.isArray() with all possible data types:</li></ul><p>JavaScript array type check - &quot;is array&quot; vs object in-depth · Code with Hugo<br>Examples for this section at observablehq.com/@hugodf/javascript-array-detection-using-array-isarray, you can play…codewithhugo.com</p><ul><li>Brilliant author Samantha Ming discusses why not to use instanceof:</li></ul><p>Better Array check with Array.isArray<br>Because arrays are not true array in JavaScript, there is no simple typeof check. No problem! Use the method…medium.com</p><ul><li>Author Moon describes the Object.prototype.toString.call([]) method in more detail in Better Programming:</li></ul><p>What Is [object Object] in JavaScript: Object.prototype.toString<br>A deeper explanation of [object Object]medium.com</p><ul><li>I wrote previously about the pitfalls of typeof in Better Programming:</li></ul><p>How To Check Data Types in JavaScript using typeof<br>Check for one of nine strings: undefined, object (null), boolean, number, bigint, string, symbol, function, or object…medium.com</p><ul><li>I’ve also written about the Object.prototype.toString.call([]) method for type checking in an article in JavaScript in Plain English:</li></ul><p>The Best Way to Type Check in Vanilla JS<br>The best way to check the type of a variable in JavaScript is not typeof. Here’s why to use…medium.com</p><ul><li>Brandon Morelli explains the short-circuit operator well in CodeBurst:</li></ul><p>JavaScript: What is short-circuit evaluation?<br>Learn how to use logical OR ( || ) to your advantage when assigning variables.codeburst.io</p><h4>Join my email list to get free access to all of my Medium articles.</h4><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f7d53c6abcc3" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Find Unique Strings in an Array Using JavaScript]]></title>
            <link>https://medium.com/@gallenanfall/how-to-find-unique-strings-in-an-array-using-javascript-28045a3fac0e?source=rss-46aa78a37a14------2</link>
            <guid isPermaLink="false">https://medium.com/p/28045a3fac0e</guid>
            <category><![CDATA[health]]></category>
            <category><![CDATA[education]]></category>
            <category><![CDATA[coronavirus]]></category>
            <category><![CDATA[life]]></category>
            <category><![CDATA[journalism]]></category>
            <dc:creator><![CDATA[Gallenanfall]]></dc:creator>
            <pubDate>Sun, 20 Dec 2020 03:35:21 GMT</pubDate>
            <atom:updated>2020-12-20T03:35:21.581Z</atom:updated>
            <content:encoded><![CDATA[<h4>Finding the unique strings from a JavaScript array is a common task for web developers — here’s three ways of how to do it.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*k4pB7kFtMAiIpAdG" /><figcaption>Photo by Gaelle Marcel on Unsplash</figcaption></figure><p>How to Find Unique Strings in an Array Using JavaScript 💙 Chillhop &amp; Code 📺 Programming Tutorials</p><h3>A Unique Array of Strings</h3><p>When working with or learning JavaScript, it’s inevitable that you’re going to have to find the unique strings in an array.</p><p>It’s a perfect practice problem for learning how to use Set, an ES6 feature, combined with the ... spread operator, as you will see later.</p><p>But it’s also a real-life problem. Maybe your React app needs to find a list of all of the unique email addresses for your clientele.</p><p>Or maybe you need to get the unique usernames from some type of database you’ve loaded with JSON over an API connection.</p><p><a href="https://test.activesilicon.com/wah/video-NEC-Nijmegen-TOP-Oss-v-en-gb-yus-.php">https://test.activesilicon.com/wah/video-NEC-Nijmegen-TOP-Oss-v-en-gb-yus-.php<br></a>h<a href="http://amik.closa.com/vux/videos-diosgyori-v-zalaegerszegi-te-v-hu-hu-1noo-8.php">ttp://amik.closa.com/vux/videos-diosgyori-v-zalaegerszegi-te-v-hu-hu-1noo-8.php<br></a>h<a href="https://test.activesilicon.com/wah/video-NEC-Nijmegen-TOP-Oss-v-en-gb-efx-.php">ttps://test.activesilicon.com/wah/video-NEC-Nijmegen-TOP-Oss-v-en-gb-efx-.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-TSV-Hartberg-SC-Rheindorf-Altach-v-en-gb-1yyo-13.php">ttp://great.gruposio.es/mfo/Video-TSV-Hartberg-SC-Rheindorf-Altach-v-en-gb-1yyo-13.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-metz-v-lens-v-fr-fr-1hbe-16.php">ttp://mid.actiup.com/fjl/Video-metz-v-lens-v-fr-fr-1hbe-16.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-olimpija-ljubljana-v-gorica-v-sl-sl-1igm-4.php">ttp://mileno.provecracing.com/xat/Video-olimpija-ljubljana-v-gorica-v-sl-sl-1igm-4.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-mallorca-v-fuenlabrada-v-es-es-1soo2-6.php">ttps://cartaodosus.info/video.php?video=video-mallorca-v-fuenlabrada-v-es-es-1soo2-6.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-TSV-Hartberg-SC-Rheindorf-Altach-v-en-gb-1hph-2.php">ttp://great.gruposio.es/mfo/Video-TSV-Hartberg-SC-Rheindorf-Altach-v-en-gb-1hph-2.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-metz-v-lens-v-fr-fr-1ztl-11.php">ttp://mid.actiup.com/fjl/Video-metz-v-lens-v-fr-fr-1ztl-11.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-Senglea-Athletic-Sirens-v-en-gb-1wkr-12.php">ttp://gd.vidrio.org/hsx/video-Senglea-Athletic-Sirens-v-en-gb-1wkr-12.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-mallorca-v-fuenlabrada-v-es-es-1leb-13.php">ttps://cartaodosus.info/video.php?video=videos-mallorca-v-fuenlabrada-v-es-es-1leb-13.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-olimpija-ljubljana-v-gorica-v-sl-sl-1pix-5.php">ttp://mileno.provecracing.com/xat/Video-olimpija-ljubljana-v-gorica-v-sl-sl-1pix-5.php<br></a>h<a href="https://test.activesilicon.com/wah/video-maints-v-verder-v-yt2-1psz-5.php">ttps://test.activesilicon.com/wah/video-maints-v-verder-v-yt2-1psz-5.php<br></a>h<a href="http://great.gruposio.es/mfo/video-Metz-Lens-v-en-gb-1mwx-.php">ttp://great.gruposio.es/mfo/video-Metz-Lens-v-en-gb-1mwx-.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-Senglea-Athletic-Sirens-v-en-gb-1upj-17.php">ttp://gd.vidrio.org/hsx/video-Senglea-Athletic-Sirens-v-en-gb-1upj-17.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-olimpija-ljubljana-v-gorica-v-sl-sl-1rpk-4.php">ttp://mileno.provecracing.com/xat/Video-olimpija-ljubljana-v-gorica-v-sl-sl-1rpk-4.php<br></a>h<a href="https://test.activesilicon.com/wah/video-maints-v-verder-v-yt2-1fcc-11.php">ttps://test.activesilicon.com/wah/video-maints-v-verder-v-yt2-1fcc-11.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-mallorca-v-fuenlabrada-v-es-es-1sqe2-19.php">ttps://cartaodosus.info/video.php?video=videos-mallorca-v-fuenlabrada-v-es-es-1sqe2-19.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-metz-v-lens-v-fr-fr-1wlg-13.php">ttp://mid.actiup.com/fjl/videos-metz-v-lens-v-fr-fr-1wlg-13.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-metz-v-lens-v-fr-fr-1ypn-14.php">ttp://mid.actiup.com/fjl/Video-metz-v-lens-v-fr-fr-1ypn-14.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-Metz-Lens-v-en-gb-1zxb-1.php">ttp://great.gruposio.es/mfo/Video-Metz-Lens-v-en-gb-1zxb-1.php<br></a>h<a href="http://mileno.provecracing.com/xat/v-ideos-olimpija-ljubljana-v-gorica-v-sl-sl-1upc-9.php">ttp://mileno.provecracing.com/xat/v-ideos-olimpija-ljubljana-v-gorica-v-sl-sl-1upc-9.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-Senglea-Athletic-Sirens-v-en-gb-1ahp-12.php">ttp://gd.vidrio.org/hsx/v-ideos-Senglea-Athletic-Sirens-v-en-gb-1ahp-12.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-mallorca-v-fuenlabrada-v-es-es-1agw2-19.php">ttps://cartaodosus.info/video.php?video=video-mallorca-v-fuenlabrada-v-es-es-1agw2-19.php<br></a>h<a href="http://amik.closa.com/vux/video-Diosgyori-Zalaegerszegi-TE-v-en-gb-hbv-.php">ttp://amik.closa.com/vux/video-Diosgyori-Zalaegerszegi-TE-v-en-gb-hbv-.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-maints-v-verder-v-yt2-1yey-14.php">ttps://test.activesilicon.com/wah/Video-maints-v-verder-v-yt2-1yey-14.php<br></a>h<a href="http://mid.actiup.com/fjl/video-Mosta-Zejtun-Corinthians-v-en-gb-1jvf-14.php">ttp://mid.actiup.com/fjl/video-Mosta-Zejtun-Corinthians-v-en-gb-1jvf-14.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-FC-Aarau-FC-Thun-v-en-gb-1brr-19.php">ttps://cartaodosus.info/video.php?video=videos-FC-Aarau-FC-Thun-v-en-gb-1brr-19.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-Metz-Lens-v-en-gb-1gai-17.php">ttp://great.gruposio.es/mfo/v-ideos-Metz-Lens-v-en-gb-1gai-17.php<br></a>h<a href="http://amik.closa.com/vux/video-Diosgyori-Zalaegerszegi-TE-v-en-gb-ekt-.php">ttp://amik.closa.com/vux/video-Diosgyori-Zalaegerszegi-TE-v-en-gb-ekt-.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-maints-v-verder-v-yt2-1hfs-13.php">ttps://test.activesilicon.com/wah/v-ideos-maints-v-verder-v-yt2-1hfs-13.php<br></a>h<a href="https://cartaodosus.info/video.php?video=v-ideos-FC-Aarau-FC-Thun-v-en-gb-1leb-8.php">ttps://cartaodosus.info/video.php?video=v-ideos-FC-Aarau-FC-Thun-v-en-gb-1leb-8.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-Mosta-Zejtun-Corinthians-v-en-gb-1blq-12.php">ttp://mid.actiup.com/fjl/videos-Mosta-Zejtun-Corinthians-v-en-gb-1blq-12.php<br></a>h<a href="http://amik.closa.com/vux/video-Diosgyori-Zalaegerszegi-TE-v-en-gb-lak-.php">ttp://amik.closa.com/vux/video-Diosgyori-Zalaegerszegi-TE-v-en-gb-lak-.php<br></a>h<a href="http://great.gruposio.es/mfo/video-sabadel-v-kastelon-v-yt2-1hwz-16.php">ttp://great.gruposio.es/mfo/video-sabadel-v-kastelon-v-yt2-1hwz-16.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-maints-v-verder-v-yt2-1wbz-10.php">ttps://test.activesilicon.com/wah/v-ideos-maints-v-verder-v-yt2-1wbz-10.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1ssd2-4.php">ttp://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1ssd2-4.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-FC-Aarau-FC-Thun-v-en-gb-1xzr-13.php">ttps://cartaodosus.info/video.php?video=videos-FC-Aarau-FC-Thun-v-en-gb-1xzr-13.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-sabadel-v-kastelon-v-yt2-1kvb-13.php">ttp://great.gruposio.es/mfo/Video-sabadel-v-kastelon-v-yt2-1kvb-13.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-osasuna-v-villarreal-v-es-es-1nsm2-17.php">ttp://gd.vidrio.org/hsx/video-osasuna-v-villarreal-v-es-es-1nsm2-17.php<br></a>h<a href="http://mid.actiup.com/fjl/video-Mosta-Zejtun-Corinthians-v-en-gb-1ovq-11.php">ttp://mid.actiup.com/fjl/video-Mosta-Zejtun-Corinthians-v-en-gb-1ovq-11.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-altay-v-akhisar-belediyespor-v-tr-tr-1wod-9.php">ttp://mid.actiup.com/fjl/videos-altay-v-akhisar-belediyespor-v-tr-tr-1wod-9.php<br></a>h<a href="http://great.gruposio.es/mfo/videos-sabadel-v-kastelon-v-yt2-1mfz-3.php">ttp://great.gruposio.es/mfo/videos-sabadel-v-kastelon-v-yt2-1mfz-3.php<br></a>h<a href="http://mileno.provecracing.com/xat/v-ideos-RCD-Mallorca-CF-Fuenlabrada-v-en-gb-qfd-.php">ttp://mileno.provecracing.com/xat/v-ideos-RCD-Mallorca-CF-Fuenlabrada-v-en-gb-qfd-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-Young-Boys-Lugano-v-en-gb-1son-13.php">ttps://cartaodosus.info/video.php?video=videos-Young-Boys-Lugano-v-en-gb-1son-13.php<br></a>h<a href="http://amik.closa.com/vux/videos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1yfv-16.php">ttp://amik.closa.com/vux/videos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1yfv-16.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1dmj-10.php">ttp://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1dmj-10.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-borussiia-m-v-khoffenkhaim-v-yt2-1cfr-17.php">ttps://test.activesilicon.com/wah/Video-borussiia-m-v-khoffenkhaim-v-yt2-1cfr-17.php<br></a>h<a href="http://mid.actiup.com/fjl/video-altay-v-akhisar-belediyespor-v-tr-tr-1lay-9.php">ttp://mid.actiup.com/fjl/video-altay-v-akhisar-belediyespor-v-tr-tr-1lay-9.php<br></a>h<a href="https://test.activesilicon.com/wah/video-borussiia-m-v-khoffenkhaim-v-yt2-1agh-17.php">ttps://test.activesilicon.com/wah/video-borussiia-m-v-khoffenkhaim-v-yt2-1agh-17.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-RCD-Mallorca-CF-Fuenlabrada-v-en-gb-kog-.php">ttp://mileno.provecracing.com/xat/Video-RCD-Mallorca-CF-Fuenlabrada-v-en-gb-kog-.php<br></a>h<a href="http://amik.closa.com/vux/v-ideos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1ahi-5.php">ttp://amik.closa.com/vux/v-ideos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1ahi-5.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1jxa-15.php">ttp://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1jxa-15.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-Young-Boys-Lugano-v-en-gb-1wlf-13.php">ttps://cartaodosus.info/video.php?video=Video-Young-Boys-Lugano-v-en-gb-1wlf-13.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-sabadel-v-kastelon-v-yt2-1zzo-17.php">ttp://great.gruposio.es/mfo/Video-sabadel-v-kastelon-v-yt2-1zzo-17.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1ybq2-18.php">ttp://gd.vidrio.org/hsx/videos-osasuna-v-villarreal-v-es-es-1ybq2-18.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-Young-Boys-Lugano-v-en-gb-1fpv-10.php">ttps://cartaodosus.info/video.php?video=video-Young-Boys-Lugano-v-en-gb-1fpv-10.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-sabadel-v-kastelon-v-yt2-1rrw-6.php">ttp://great.gruposio.es/mfo/Video-sabadel-v-kastelon-v-yt2-1rrw-6.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-altay-v-akhisar-belediyespor-v-tr-tr-1fhj-16.php">ttp://mid.actiup.com/fjl/Video-altay-v-akhisar-belediyespor-v-tr-tr-1fhj-16.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-borussiia-m-v-khoffenkhaim-v-yt2-1eqi-11.php">ttps://test.activesilicon.com/wah/Video-borussiia-m-v-khoffenkhaim-v-yt2-1eqi-11.php<br></a>h<a href="http://mileno.provecracing.com/xat/Video-RCD-Mallorca-CF-Fuenlabrada-v-en-gb-llc-.php">ttp://mileno.provecracing.com/xat/Video-RCD-Mallorca-CF-Fuenlabrada-v-en-gb-llc-.php<br></a>h<a href="http://amik.closa.com/vux/videos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1yea-5.php">ttp://amik.closa.com/vux/videos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1yea-5.php<br></a>h<a href="http://amik.closa.com/vux/videos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1bln-10.php">ttp://amik.closa.com/vux/videos-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1bln-10.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1jyo-18.php">ttp://gd.vidrio.org/hsx/video-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1jyo-18.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-altay-v-akhisar-belediyespor-v-tr-tr-1rum-2.php">ttp://mid.actiup.com/fjl/Video-altay-v-akhisar-belediyespor-v-tr-tr-1rum-2.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-Senglea-Athletic-Sirens-v-en-gb-1jol-10.php">ttps://cartaodosus.info/video.php?video=video-Senglea-Athletic-Sirens-v-en-gb-1jol-10.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-borussiia-m-v-khoffenkhaim-v-yt2-1wxv-10.php">ttps://test.activesilicon.com/wah/Video-borussiia-m-v-khoffenkhaim-v-yt2-1wxv-10.php<br></a>h<a href="http://gd.vidrio.org/hsx/videos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1mhz-1.php">ttp://gd.vidrio.org/hsx/videos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1mhz-1.php<br></a>h<a href="http://mid.actiup.com/fjl/v-ideos-altay-v-akhisar-belediyespor-v-tr-tr-1kqp-11.php">ttp://mid.actiup.com/fjl/v-ideos-altay-v-akhisar-belediyespor-v-tr-tr-1kqp-11.php<br></a>h<a href="https://test.activesilicon.com/wah/video-borussiia-m-v-khoffenkhaim-v-yt2-1fhm-1.php">ttps://test.activesilicon.com/wah/video-borussiia-m-v-khoffenkhaim-v-yt2-1fhm-1.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-metz-v-lens-v-fr-fr-1bxu-1.php">ttp://great.gruposio.es/mfo/v-ideos-metz-v-lens-v-fr-fr-1bxu-1.php<br></a>h<a href="http://mileno.provecracing.com/xat/video-mallorca-v-fuenlabrada-v-es-es-1bzm-13.php">ttp://mileno.provecracing.com/xat/video-mallorca-v-fuenlabrada-v-es-es-1bzm-13.php<br></a>h<a href="http://amik.closa.com/vux/Video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1gov-15.php">ttp://amik.closa.com/vux/Video-gazisehir-gaziantep-v-fenerbahce-v-tr-tr-1gov-15.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-Senglea-Athletic-Sirens-v-en-gb-1ove-18.php">ttps://cartaodosus.info/video.php?video=video-Senglea-Athletic-Sirens-v-en-gb-1ove-18.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-metz-v-lens-v-fr-fr-1ojv-4.php">ttp://great.gruposio.es/mfo/v-ideos-metz-v-lens-v-fr-fr-1ojv-4.php<br></a>h<a href="http://amik.closa.com/vux/videos-sautgempton-v-manchester-siti-v-yt2-1gyg-18.php">ttp://amik.closa.com/vux/videos-sautgempton-v-manchester-siti-v-yt2-1gyg-18.php<br></a>h<a href="http://gd.vidrio.org/hsx/v-ideos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1vuf-14.php">ttp://gd.vidrio.org/hsx/v-ideos-Bayer-04-Leverkusen-Bayern-Munich-v-en-gb-1vuf-14.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-Senglea-Athletic-Sirens-v-en-gb-1lnl-4.php">ttps://cartaodosus.info/video.php?video=Video-Senglea-Athletic-Sirens-v-en-gb-1lnl-4.php<br></a>h<a href="http://mileno.provecracing.com/xat/videos-mallorca-v-fuenlabrada-v-es-es-1qsh-14.php">ttp://mileno.provecracing.com/xat/videos-mallorca-v-fuenlabrada-v-es-es-1qsh-14.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-rb-leiptsig-v-keln-v-yt2-1sll-16.php">ttps://test.activesilicon.com/wah/v-ideos-rb-leiptsig-v-keln-v-yt2-1sll-16.php<br></a>h<a href="http://mid.actiup.com/fjl/videos-dinamo-zagreb-v-varazdin-v-hr-hr-1ffh-7.php">ttp://mid.actiup.com/fjl/videos-dinamo-zagreb-v-varazdin-v-hr-hr-1ffh-7.php<br></a>h<a href="https://test.activesilicon.com/wah/Video-rb-leiptsig-v-keln-v-yt2-1ejb-18.php">ttps://test.activesilicon.com/wah/Video-rb-leiptsig-v-keln-v-yt2-1ejb-18.php<br></a>h<a href="http://great.gruposio.es/mfo/Video-metz-v-lens-v-fr-fr-1buc-8.php">ttp://great.gruposio.es/mfo/Video-metz-v-lens-v-fr-fr-1buc-8.php<br></a>h<a href="http://amik.closa.com/vux/video-sautgempton-v-manchester-siti-v-yt2-1yll-4.php">ttp://amik.closa.com/vux/video-sautgempton-v-manchester-siti-v-yt2-1yll-4.php<br></a>h<a href="http://amik.closa.com/vux/Video-sautgempton-v-manchester-siti-v-yt2-1osy-2.php">ttp://amik.closa.com/vux/Video-sautgempton-v-manchester-siti-v-yt2-1osy-2.php<br></a>h<a href="https://test.activesilicon.com/wah/video-rb-leiptsig-v-keln-v-yt2-1hqk-14.php">ttps://test.activesilicon.com/wah/video-rb-leiptsig-v-keln-v-yt2-1hqk-14.php<br></a>h<a href="http://great.gruposio.es/mfo/video-metz-v-lens-v-fr-fr-1rlb-2.php">ttp://great.gruposio.es/mfo/video-metz-v-lens-v-fr-fr-1rlb-2.php<br></a>h<a href="https://cartaodosus.info/video.php?video=Video-osasuna-v-villarreal-v-es-es-1mal-13.php">ttps://cartaodosus.info/video.php?video=Video-osasuna-v-villarreal-v-es-es-1mal-13.php<br></a>h<a href="https://cartaodosus.info/video.php?video=videos-osasuna-v-villarreal-v-es-es-1zvk2-3.php">ttps://cartaodosus.info/video.php?video=videos-osasuna-v-villarreal-v-es-es-1zvk2-3.php<br></a>h<a href="https://test.activesilicon.com/wah/v-ideos-rb-leiptsig-v-keln-v-yt2-1bpw-1.php">ttps://test.activesilicon.com/wah/v-ideos-rb-leiptsig-v-keln-v-yt2-1bpw-1.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-metz-v-lens-v-fr-fr-1waj-5.php">ttp://great.gruposio.es/mfo/v-ideos-metz-v-lens-v-fr-fr-1waj-5.php<br></a>h<a href="http://mid.actiup.com/fjl/v-ideos-Dinamo-Zagreb-NK-Varazdin-v-en-gb-vxr-.php">ttp://mid.actiup.com/fjl/v-ideos-Dinamo-Zagreb-NK-Varazdin-v-en-gb-vxr-.php<br></a>h<a href="http://gd.vidrio.org/hsx/video-SV-Zulte-Waregem-STVV-v-en-gb-1wbh-14.php">ttp://gd.vidrio.org/hsx/video-SV-Zulte-Waregem-STVV-v-en-gb-1wbh-14.php<br></a>h<a href="http://amik.closa.com/vux/video-sautgempton-v-manchester-siti-v-yt2-1mgj-2.php">ttp://amik.closa.com/vux/video-sautgempton-v-manchester-siti-v-yt2-1mgj-2.php<br></a>h<a href="http://mid.actiup.com/fjl/Video-Dinamo-Zagreb-NK-Varazdin-v-en-gb-exi-.php">ttp://mid.actiup.com/fjl/Video-Dinamo-Zagreb-NK-Varazdin-v-en-gb-exi-.php<br></a>h<a href="http://great.gruposio.es/mfo/v-ideos-Mosta-Zejtun-Corinthians-v-en-gb-1mvx-.php">ttp://great.gruposio.es/mfo/v-ideos-Mosta-Zejtun-Corinthians-v-en-gb-1mvx-.php<br></a>h<a href="https://cartaodosus.info/video.php?video=video-osasuna-v-villarreal-v-es-es-1sey2-9.php">ttps://cartaodosus.info/video.php?video=video-osasuna-v-villarreal-v-es-es-1sey2-9.php<br></a>h<a href="https://test.activesilicon.com/wah/videos-rb-leiptsig-v-keln-v-yt2-1cir-13.php">ttps://test.activesilicon.com/wah/videos-rb-leiptsig-v-keln-v-yt2-1cir-13.php<br></a>h<a href="http://amik.closa.com/vux/video-sautgempton-v-manchester-siti-v-yt2-1zlp-18.php">ttp://amik.closa.com/vux/video-sautgempton-v-manchester-siti-v-yt2-1zlp-18.php<br></a>h<a href="http://mid.actiup.com/fjl/v-ideos-Dinamo-Zagreb-NK-Varazdin-v-en-gb-lta-.php">ttp://mid.actiup.com/fjl/v-ideos-Dinamo-Zagreb-NK-Varazdin-v-en-gb-lta-.php</a></p><h3>Method 1 — Use Set to Find Unique Strings</h3><p>The JavaScript ES6 feature Set is awesome for finding unique primitive values, including strings. You can create a new array containing just the unique strings from another array in just one line of code.</p><p>Here’s how it works:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/848/1*vjOo6cIAv1mjUzQrfMqdRg.png" /><figcaption>View the raw code as a GitHub Gist</figcaption></figure><p>As you can see in the code example, Array.from() is equivalent to using the square brackets [] with the ... spread operator.</p><p>For most cases, Set is going to be all you need. But let’s look at two other methods of removing non-unique strings from an array.</p><h3>Method 2 —Unique Strings with a JavaScript Object</h3><p>If you don’t want to use Set, you could loop through an array using a for...of loop while checking for uniqueness with a JavaScript object.</p><p>Here’s what that would look like:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/874/1*C4DnmSS-ObvC7txw_77fsQ.png" /><figcaption>View the raw code as a GitHub Gist</figcaption></figure><p>This method works because JavaScript objects must have unique keys (also called properties). Inside the loop, properties that haven’t been set yet have the value of undefined, which is a falsy value, meaning it evaluates to false in an if statement or other conditional, like the ? ternary operator.</p><p>For comparison, variables that haven’t been declared yet throw a ReferenceError when accessed, but undeclared properties do not.</p><p>If you’d like, you can skip the .push() (Array.prototype.push()) call to add the items to a new array, because you can get the object’s unique keys with the Object.keys() method. That method returns an iterable that can be turned into an array with Array.from() or the ... spread operator.</p><h3>Method 3 — Finding Unique Strings with ES5</h3><p>If you’re using ES5 to support older browsers like Internet Explorer 9, then you won’t have access to Set or the for...of loop.</p><p>Instead, you’ll need to modify the last method to use a simple for loop instead. The code is otherwise similar to remove duplicate strings:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/874/1*07ZX7bKvLGG9KSrLCL-Qcg.png" /><figcaption>View the raw code as a GitHub Gist</figcaption></figure><p>Unlike the last example, there’s no easy way in ES5 to just turn the unique Object.keys() (a method that is available in IE9) directly into an array.</p><p>You can’t use the ... spread operator or Array.from(), so you’re required to .push() the strings to a new array with a loop.</p><h3>Conclusion: Set Removes Duplicate Strings</h3><p>Filtering an array for unique strings requires only one line of code if you choose to use the fantastic ES6 feature Set.</p><p>That said, it’s useful to understand the intricacies of JavaScript well-enough to be able to find unique strings using loops and objects.</p><p>And, if you’re stuck supporting Internet Explorer, then you’ll probably not be able to use Set at all … unless you’re using Babel to polyfill your JavaScript.</p><h4>Unique Strings from Object Values</h4><p>What if you have an array of objects, and the strings you need are the values of a property on those objects — such as usernames or email addresses?</p><p>You’d need to first .map() (Array.prototype.map()) the array, creating a new array of non-unique strings, and then apply Set to remove the duplicates.</p><p>To learn how to use .map() to filter the unique strings found as object values in an array of objects, please refer my complete guide to using Set:</p><p>How to Use Set to Filter Unique Items in JavaScript ES6<br>Need unique values in JavaScript? That’s where the Set object comes in. Here’s how to use Set to filter a list of…medium.com</p><p>Happy coding! 🤩💻💯🔥🎸</p><h4>Join my email list to get free access to all of my Medium articles.</h4><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=28045a3fac0e" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>