Avatar billede per1291 Nybegynder
02. juni 2005 - 01:18 Der er 10 kommentarer og
1 løsning

Gratis Javascript validator?

Hej -

Det blev nævnt i en nylig korrespondance, at man bør validere sit script. Findes der en gratis validator? Måske oven i købet en, man kan downloade.

Når jeg søger på Google, får jeg fat i en masse Javascript rutiner til validering af forms. Jeg kan bare ikke finde de rigtige søgeord.

Per Andersen
Avatar billede olebole Juniormester
02. juni 2005 - 02:37 #1
<ole>

Det er svært at forestille sig noget bedre end Mozilla-browserne. Er der en fejl i dit script, får du præcist at vide i hvilken linie .... hvad mere kan man ønske sig?  :)
  http://www.mozilla.org/download.html

/mvh
</bole>
Avatar billede olebole Juniormester
02. juni 2005 - 02:41 #2
- men hvem har dog bildt dig ind, man bør 'validere' sine JavaScripts?

Udover at bruge browsernes fejlmeldinger, tror jeg, det bliver vanskeligt at finde tre kodere på verdensplan, der kører deres scripts gennem en validator ... hvis en sådan overhovedet eksisterer. Jeg har aldrig set en - og fatter ikke helt, hvad sådan én skulle bruges til  :)
Avatar billede psykochicken Nybegynder
02. juni 2005 - 12:23 #3
Hvis der havde været et reelt behov for en sådan - var den nok lavet ;)
Avatar billede skovenborg Nybegynder
02. juni 2005 - 12:58 #4
Det er ikke en direkte validator, som dem fra w3c, men der findes denne her, som checker for diverse dårlige kodevaner (bla. skal dine linier afsluttes med semi-kolon osv.):
http://www.crockford.com/javascript/jslint.html

Denne "validator" vil dog også brokke sig over hvis du fx skrive i++, da dette påstås at være en sikkerhedsmæssig dårlig ting at bruge. Hvad han præcis mener med det aner jeg ikke, men det står på denne her side: http://www.crockford.com/javascript/lint.html
Avatar billede skovenborg Nybegynder
02. juni 2005 - 13:02 #5
Jeg spurgte ham der har lavet det på et tidspunkt hvorfor man ikke bør bruge post-increment (i++), og dette var hans lille forklaring:
<cite>
The i++ tends to be misused. Most of the buffer overrun bugs that
Microsoft has been purging from its code base used i++. The ++i is less
prone to misuse. I like the i += 1 even better. JSLINT looks for errors,
but it also looks for bad practices that are known to be error prone.
</cite>
Avatar billede per1291 Nybegynder
02. juni 2005 - 13:56 #6
skovenborg skriver:
> Most of the buffer overrun bugs that Microsoft has been purging from its code base used i++

Det er det sikreste at anse værdien af en tællervariabel for udefineret / ukendt EFTER afvikling af en for-løkke. Måske har nogle programmører tilsidesat dette, og altså antaget en bestemt værdi af variablen efter løkken.

Hilsen  Per
Avatar billede per1291 Nybegynder
02. juni 2005 - 20:29 #7
skovenborg skriver:
> The ++i is less prone to misuse.

Jeg har ikke mødt den syntaks før. Har lavet en lille test, men kan ikke se forskellen. ER der forskel på i++ og ++i ?

Jeg har været inde på dit link. Det er en online-validator, men kildekoden er vedlagt. Selv om man har mulighed for at fravælge i++ check og semikolon-krav, synes jeg stadig kravene til et script er for skrappe.

Hilsen  Per
Avatar billede skovenborg Nybegynder
02. juni 2005 - 22:46 #8
Angående pre-increment (++i) og post-increment (i++), så kan forskellen nok nemmest illustreres ved dette eksempel:
var a = 2;
alert(a++); // output: 2
alert(a); // output: 3
var b = 2;
alert(++b); // output: 3

Altså ved i++ bliver i først større efter og ++i bliver i større før - lidt rodet skrevet, men eksemplet siger det vidst meget godt.

Angående jslint, så er jeg udmærket godt klar over det ikke er en validator. Hvis du taler om validator ligesom html og css-validatoren, så er det jo faktisk bare den ganske almindelig js-konsol (hvad den hedder i IE ved jeg ikke, og den skal du heller ikke bruge - se oles kommentar), der viser om du har lavet en fejl i dit script. jslint er bare en måde hvorpå man kan checke for dårlige kodevaner, såvidt jeg har forstået den.
Avatar billede per1291 Nybegynder
03. juni 2005 - 00:30 #9
Det jeg forestillede mig med en validator var, at den måske også kunne identificere ubrugte variabler og funktioner. (Og en superfacilitet ville være, om den samtidig kunne formatere koden med pæne indrykninger og sådan - ligesom det Pascal-program ved navn Spruce vi havde på uni for 25 år siden. Denne operation kunne jo sagtens udføres i samme forretningsgang!)

Jeg har en Mozilla Firefox - og burde måske ophøje den til standardbrowser. Den kan åbenbart fortælle når jeg for eksempel har glemt et anførselstegn - i stedet for blot at skælde ud og smække med døren.

Tak til skovenborg, tak til ole.
Vi kom lidt væk fra emnet, men vendte tilbage igen. Lad os få afsluttet denne tråd. Smid et svar, begge to.

Hilsen  Per
Avatar billede per1291 Nybegynder
05. juni 2005 - 00:43 #10
Points givet til mig selv, der er gået mere end 24 timer.
Måske har I opfattet det som "for billige points".
Avatar billede skovenborg Nybegynder
05. juni 2005 - 16:37 #11
måske :-) Gør heller ikke så meget. Du fik jo heller aldrig rigtig fundet en validator.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester