Avatar billede hathor Nybegynder
18. juli 2002 - 22:18 Der er 7 kommentarer og
1 løsning

Metoder?

Jeg har en bog, Computing Concepts with Java 2 Essentials af cay horstmann.

Jeg er ikke meget inde i Java, men denne bog nævner jo mange forskellige metoder.

Hvad er forskellen mellem Java og JavaScript? Hvordan finder jeg ud af, om de metoder som Hr. Horstmann bruger i sin javabog kan bruges i JavaScript?

Kort sagt: Hvor meget af det man lærer i Java kan overføres direkte til JavaScript?
Avatar billede jespernaur Nybegynder
18. juli 2002 - 22:21 #1
Java og JavaScript er to helt forskellige ting - det er kun til forvirring af fjenden at de næsten hedder det samme!
Avatar billede hathor Nybegynder
18. juli 2002 - 22:26 #2
Vil det sige at det man lærer i Java ikke kan tages med til JavaScript? At metoderne ikke hedder det samme?

Det er jo lamt.,
Avatar billede jakoba Nybegynder
18. juli 2002 - 23:05 #3
Nogen af metoderne hedder det samme, men derudover, Ja det er lamt :-)
Avatar billede jakoba Nybegynder
18. juli 2002 - 23:08 #4
du kan slå op i indexet her om en given java metode virker i java script:
http://developer.netscape.com/docs/manuals/js/client/jsref/index.htm
husk også at cheke om den virkelig gør det samme.
Avatar billede =maddog= Nybegynder
19. juli 2002 - 00:28 #5
Der er ret væsentlige forskelle på JavaScript og Java. Det grundlæggende element i JavaScript er Global og man anvender ikke termen method, men function.
Der er visse indbyggede objekter i JavaScript, f.eks. Number, Object, Array, Document med flere.
Man kan lave sine egne objekter. Det gøres med den ret forvirrende syntaks
function MyObject(par1, par2) {// konstruktor MyObject
  this.parameter1 = par1;
  this.parameter2 = par2;
  this.readystate = 1;
}
funktioner tilføjes objekter gennem prototype. funktioner der ikke er konstruktorer eller prototyper er underforstået Global.prototype, og kan anvendes globalt i hele (D)HTML dokumentet.
MyObject.prototype.multiply = function() {
  return this.parameter1*this.parameter2;
}
function multiply(num1,num2) { //public int multiply(int num1, int num2)
  return num1*num2;
}
Der findes ikke simple datatyper som char og int i JavaScript. Alle varible er objekter i en eller anden forstand og en varibel der er erklæret og tildelt et tal kan frit typecastes til andre objekter uden det eksplicit skal angives. variable der er erklæret uden for function er underforstået public og kan anvendes overalt. variable der er erklæret i funktioner er private for den function.
var integer = 1;  (underforstået var integer = new Number(1);)
function increment() { // public void increment()
integer++;
var x = integer; // denne variabel kan kun anvendes i denne funktion
}
function makeArray() {
integer = new Array(); // ingen problemer her. fuld polymorfi.
}

Som det sikkert er klart er der milevidt mellem Java og JavaScript, selvom der er visse ligheder. JavaScript har dog alle de betingelser der skal til for at udnytte objekt-orienteret design, og når du har lært syntaxen kan du sikkert udnytte dine færdigheder i Java på behørig vis.
Jakoba du må lige rette mig hvis der er noget galt.
Avatar billede jakoba Nybegynder
19. juli 2002 - 01:09 #6
Det ser helt fint ud.
Det eneste jeg nok vil anholde er den med at atomare variable implicit oprettes som objekter, det er ikke helt rigtig

var x = 25; // skaber blot en variabel med talværdien 25
var y = new Nymber(25); // skaber et objekt der indeholder værdien 25

hvis man så bruger x somom den var et objekt af typen Number bliver den midletidigt konverteret og det virker, men faktisk er x stadig bare en atomar variabel. prøv:

<script type="text/javascript"> <!-- //>
var x = 25;                // laver et tal
var y = new Number( 25 );  // laver et Number objekt
alert (  "x er " +typeof( x ) +"        y er " +typeof( y )
      + "\nx.valueOf() er " +x.valueOf() +"  y.valueOf() er " +y.valueOf()
      + "\nx er " +typeof( x ) +"        y er " +typeof( y ) );
// --> </script>

mvh JakobA
Avatar billede =maddog= Nybegynder
19. juli 2002 - 10:11 #7
ok tænkte jeg ikke over. jeg anvender selv Object.contructor, men den vil jo også konvertere en atomar variabel øjeblikkelig og derfor give "Number". Retteligt burde den vel returnere null eller undefined ved en simpel atomar datatype.
Avatar billede hathor Nybegynder
26. juli 2002 - 13:31 #8
WOW!

Jamen det virker jo fuldstændigt vanvittigt at lære. Super svar.
Tak

Hathor
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