
Tekstilista taulukoksi: PHP, JavaScript, Python, Perl, JSON, SQL
Liitä sarake Excelistä, SQL-kyselyn tuloste tai yksinkertaisesti lista yksi arvo rivillä — saat valmiin taulukon oikein suojattuna seitsemälle muodolle. Kaikki lasketaan selaimessasi: listaa ei lähetetä minnekään eikä tallenneta mihinkään.
.txt- tai .csv-tiedosto — se luetaan paikallisesti. Excelin tai Google Sheetsin sarakkeen voi liittää suoraan.
Sopii myös TypeScriptille. const varin sijaan: tällaisen muuttujan uudelleenmäärittely on virhe jo ennen suoritusta.
Liitä lista yllä — taulukko ilmestyy tähän.
Liitä lista yllä — taulukko ilmestyy tähän.
Liitä lista yllä — taulukko ilmestyy tähän.
Liitä lista yllä — taulukko ilmestyy tähän.
Liitä lista yllä — taulukko ilmestyy tähän.
Liitä lista yllä — taulukko ilmestyy tähän.
Liitä lista yllä — taulukko ilmestyy tähän.
Tiedot eivät poistu selaimestasi — laskenta tapahtuu paikallisesti eikä mitään lähetetä palvelimelle.
Mitä työkalu tekee kullekin arvolle
Rivistä tulee yksi taulukon alkio. Tarvittaessa rivin voi lisäksi jakaa pilkuista CSV-sääntöjen mukaan — silloin lainausmerkkien sisällä oleva pilkku pysyy osana arvoa. Sen jälkeen jokainen arvo suojataan, kullekin kielelle omalla tavallaan: PHP ja Perl yksinkertaisilla lainausmerkeillä — suojataan tasan kaksi merkkiä, kenoviiva ja itse lainausmerkki. PHP kaksinkertaisilla lainausmerkeillä — mukaan tulee dollarimerkki, muuten $HOME tekstissä sijoittaisi muuttujan arvon. Perl kaksinkertaisilla lainausmerkeillä — mukaan tulee vielä ät-merkki, koska Perlissä myös @list interpoloidaan. JavaScript, TypeScript ja Python — kenoviiva, lainausmerkki ja ohjausmerkit ohjaussarjoina. JSON — tiukasti RFC 8259:n mukaan, kielen omin keinoin. SQL — heittomerkki kahdennetaan, kuten standardi vaatii. CSV — RFC 4180:n mukaan: lainausmerkkeihin otetaan vain kenttä, jossa on pilkku, lainausmerkki tai reunavälilyönti. Luku tulostuu ilman lainausmerkkejä vain silloin, kun se pysyy samana lukuna Number()-kierroksen jälkeen. Tuotekoodi 007, nollalla alkava puhelinnumero, 1e5, 0x1F ja yli 2⁵³:n kokonaisluku eivät läpäise tarkistusta ja pysyvät merkkijonoina.
Miten tämä eroaa vanhoista listamuuntimista
Klassinen arrayThis tarkistaa isNaN()-kutsulla, «onko tämä luku», eikä suojaa mitään muuta kuin itse lainausmerkin. Tästä seuraa neljä hiljaista vauriota, jotka näkyvät vasta generoitua koodia ajettaessa: Polku C:\Users\admin kaksinkertaisissa lainausmerkeissä tuottaa sulkeutumattoman merkkijonon — kenoviiva aloittaa siinä ohjaussarjan. Tyhjä rivi läpäisee isNaN():n lukuna ja päätyy koodiin paljaana pilkkuna: ["a", , "b"]. Tuotekoodi 007 muuttuu PHP:ssä oktaaliluvuksi ja JavaScriptin strict-tilassa syntaksivirheeksi. Windowsista kopioitu lista raahaa jokaisen arvon perässä näkymätöntä vaununpalautusmerkkiä. Täällä kaikki neljä tapausta on hoidettu, ja Perliksi merkitty tuloste on oikeasti Perliä: lista kaarisulkeissa eikä array()-rakenne, jota Perlissä ei ole.
