Avatar billede peleiden Nybegynder
21. april 2005 - 12:50 Der er 8 kommentarer og
1 løsning

vedr split functionen

Hej

Nogle der kan forklare mig hvorfor jeg ikke kan bruge splitfunctionen nedenfor

var sUserID = Request.ServerVariables("LOGON_USER");
var sUserName = sUserID.split("\");

jeg får fejlen:
Unterminated string constant - Line: 7 - Column: 34
Avatar billede knudx Nybegynder
21. april 2005 - 12:57 #1
fordi \" er det du skriver hvis du vil have et " tegn midt i en streng. Hvis du vil have \ skal du skrive \\... Sådan:

var sUserName = sUserID.split("\\");
Avatar billede barklund Nybegynder
21. april 2005 - 13:02 #2
Umiddelbart gætter jeg på, at du snakker JScript mens kategorien drejer sig om JavaScript. Heldigvis er begge dele dog ECMAScript 262 derivater og er derfor næsten ens - blandt andet på dette punkt og stort set alle andre. Men forskelle eksisterer dog.

Blot en lille sidebemærkning, tag jer ikke af mig :)

--
Morten Barklund
Avatar billede peleiden Nybegynder
21. april 2005 - 13:14 #3
Du har fuldstændig ret barklund, at jeg nemlig er lidt i tvivl om hvorvidt det er Javascript eller JScript og forskellene på dem

når jeg gør følgende
var sUserName = sUserID.split("\\");

får jeg fejlen
Object doesn't support this property or method (438)
Avatar billede knudx Nybegynder
21. april 2005 - 13:19 #4
Hvis sUserID er en streng, bør den kunne splittes. Har du checked (typeof sUserID != 'undefined') !?!
Avatar billede knudx Nybegynder
21. april 2005 - 13:21 #5
[[ang sprogtypen ar det vel JScript serverside under asp eller hur? Men de fleste objekter og syntaks er vel det samme...]]
Avatar billede olebole Juniormester
21. april 2005 - 16:38 #6
<ole>

JScript er et af ASP-sprogene - og det i IE, de fleste tror, er JavaScript. Langt det meste er ens i JavaScript og JScript - men der er dog en del forskelle.

Hvad angår split, så virker det viste eksempel ikke:
var sUserID = "sf\wertyu";
var sUserName = sUserID.split("\\");
alert(sUserName.length);

Det skyldes, at strengen 'sUserID' ikke er lovlig. Man kan ikke bruge specialtegn i JavaScript (selvom det ofte lykkes, er det ikke lovligt) - men skal i stedet bruge f.eks. den escapede oktal-værdi af tegnets keyCode. Dette virker derfor korrekt:
var sUserID = "sf\134wertyu";
var sUserName = sUserID.split("\134");
alert(sUserName.length)

Har du brug for en oktal-konverter, skrev jeg på et tidspunkt denne:
    http://tjenester.dk/x-codes.dk/eksperten/oktal_konverter/

/mvh
</bole>
Avatar billede olebole Juniormester
21. april 2005 - 16:40 #7
Denne funker naturligvis også:
var sUserID = "sf\\wertyu";
var sUserName = sUserID.split("\\");
alert(sUserName.length)

- men det kommer som sagt anpå, hvor strengen kommer fra ... og dermed, hvordan den ser ud  :)
Avatar billede peleiden Nybegynder
22. april 2005 - 13:14 #8
Super, og tak for svar, oleboles eks virker.
Send et svar, så er der point..
Avatar billede olebole Juniormester
22. april 2005 - 21:43 #9
... sendt, tak  :)
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