Toon posts:

thousand seperator voor numbers

Pagina: 1
Acties:

Verwijderd

Topicstarter
ok zal wel weer een super domme vraag zijn hoor.. :) maaruh..
ik heb output uit mijn database van nummers
nu wil ik ze weergeven met een duizend seperator.
dus ipv "1234567" --> "1.234.567"
is daar niet ff een makkelijke functie voor in javascript?
of moet die helemaal geschreven worden?

  • SH007
  • Registratie: November 2001
  • Niet online
whoami schreef in je topic in P&W:
Lees eens de P&W Quickstart.
- Je topic titel is niet duidelijk;
- Javascript vragen horen thuis in W&G
- scriptrequest zijn verboden op GoT
Vandaar dus dat het topic dicht gaat. Zo'n functies bestaan heel zeker (maar je wilt je gegevens zo niet opslaan in je databank natuurlijk, enkel representeren). Kijk eens in de manual/boek/tutorial/etc...
Dit is dus een scriptrequest. Je moet eerst maar eens wat tutorials ofzo bekijken.

Verwijderd

Topicstarter
sorry hoor maar vraag NIET om een script.
maar vraag of er een functie is voor numbers of math om die puntjes er tussen te krijgen...als die er neit is dan ga ik zelf wel knutselen met scrippie

  • Willem
  • Registratie: Februari 2001
  • Laatst online: 04-09 23:23
Topic hoeft opzich niet op slot, want het is geen scriptrequest wat mij betreft.

Wel zou ik wel wat meer moeite doen voordat je hier een topic opent. Als ik namelijk even zoek kom ik al heel snel deze site tegen, welke me wel aardig handig lijkt.

Motor (of auto) onderhoud bijhouden


Verwijderd

Topicstarter
Ok ok ..moet dus laten blijken dat ik moeite heb gedaan..
sorry. ik heb natuurlijk wel lopen zoeken en klooien met scripts.
eerst kijken hoe lang de string is en dan van achtrer tellen en daar splitten ofzo..maar dr moet toch wat makkelijkers wezen dacht ik zo.

zoiets als Number(10000).seperator ofzo :)

kon daar nix van vinden, dus misschien wisten de wizzkids hier wat :)

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

code:
1
2
3
4
5
6
7
8
function separate(nr) {
    var part = nr.substring(nr.length%3);
    return (nr.substring(0, nr.length%3) 
        + part.replace(/([0-9]{3})/gi, ".$1"));
}

blah = separate('5337892')
alert(blah)

:D regexp roelen

[edit]
gaat fout met een veelvoud van 3 in de hoeveelheid cijfers in je getal :( maarja lijkt me een kleine aanpassing

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


Verwijderd

/me zuigt nog steeds als een Nilfisk met regExps |:(
code:
1
2
3
4
5
6
7
8
9
10
11
12
function makeMetric(iNumber) {
    var sNumber = iNumber + ''; // Convert to string
    var aNumber = sNumber.split(''); // Convert to array
    aNumber = aNumber.reverse(); // Draai array om
    for(var i=3; i<aNumber.length; i+=3) {
        aNumber[i] = aNumber[i] + '.'; // Gooi puntjes tussen
    }
    aNumber = aNumber.reverse(); // Draai array om
    var sNumber = aNumber.join(''); // convert to string
    return sNumber;
}
alert(makeMetric(10101012314214));

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

In navolging van Clay dan:
code:
1
2
3
4
5
6
7
8
9
10
function separate(nr) {
    var nr = nr + "";
    var part = nr.substr(nr.length%3);
    part = (nr.substr(0, nr.length%3) + part.replace(/([0-9]{3})/gi, ".$1"));
    if(part.charAt(0)==".")
        return part.substr(1,part.length);
    else return part;
}
blah = separate(533337892)
alert(blah)

paar kleine wijzigingetjes :P

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

dan kan het ook nog zo:
code:
1
2
3
4
5
6
7
8
function makeMetric(nr) {
    var res = (nr+'').split('').reverse().join('');
    res = res.replace(/([0-9]{3})/gi, '$1.');
    res = res.split('').reverse().join('');
    return (res.length%4 > 0)? res:res.substring(1);
}

alert(makeMetric(300000));

en waarom heeft een string eigenlijk geen reverse? :{ want dit ziet er wat "rommelig" uit

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


Verwijderd

Op woensdag 26 juni 2002 20:48 schreef Clay het volgende:
dan kan het ook nog zo:
code:
1
2
3
4
5
6
7
8
function makeMetric(nr) {
    var res = (nr+'').split('').reverse().join('');
    res = res.replace(/([0-9]{3})/gi, '$1.');
    res = res.split('').reverse().join('');
    return (res.length%4 > 0)? res:res.substring(1);
}

alert(makeMetric(300000));

en waarom heeft een string eigenlijk geen reverse? :{ want dit ziet er wat "rommelig" uit
een reverse functie is zo geschreven 8-)
zeker door een 1337 scripter als jij

Verwijderd

Op woensdag 26 juni 2002 22:07 schreef FoOL het volgende:

[..]

een reverse functie is zo geschreven 8-)
code:
1
2
3
4
5
6
function StringReverse( ) {
    return this.split('').reverse().join('');
}
String.prototype.reverse = StringReverse;
var the_string = 'zo geschreven';
alert(the_string.reverse());

:P

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Blues: [prototyping]
that is soooo, like... cool, dude :9~

Als we dan toch bezig zijn :+
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function StringReverse () {
   return this.split('').reverse().join('');
}
String.prototype.reverse = StringReverse;

function NumberFormat () {
   var res = new String ( this );

   res = res.reverse ().
        replace ( 
           /([0-9]{3})/gi, 
           '$1.' 
        ).reverse ();

   return (res.length%4 > 0)? res:res.substring(1);
}
Number.prototype.format = NumberFormat;

i = 10000000;
alert ( i.format () );

edit:
implementeer een reverse, gebruik 'm dan ook |:( :D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Op donderdag 27 juni 2002 09:14 schreef Blues het volgende:

[..]
code:
1
2
3
4
5
6
function StringReverse( ) {
    return this.split('').reverse().join('');
}
String.prototype.reverse = StringReverse;
var the_string = 'zo geschreven';
alert(the_string.reverse());

:P
waarom heeft iedereen die extra regel nodig:
code:
1
String.prototype.reverse = StringReverse;

schrijf hem dan gewoon gelijk zo :
code:
1
2
3
String.prototype.reverse = function(){  
    return this.split("").reverse().join("")
}

in het kader van kort, korter, kortst! :P

"You're only as good, as what you did last week."


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

oh,when?:
waarom heeft iedereen die extra regel nodig?
zit wat in...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 14:58

Pelle

🚴‍♂️

Op donderdag 27 juni 2002 10:31 schreef oh,when? het volgende:
waarom heeft iedereen die extra regel nodig:
in het kader van kort, korter, kortst! :P
Inderdaad, vind ik zowiezo ook een stuk overzichtelijker staan; je ziet bij je functie meteen op wat voor soort object hij van toepassing is.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

nou ok, in het kader van kort-korter-kortst dan:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
String.prototype.reverse = function () {
   return this.split('').reverse().join('');
}
Number.prototype.format = function () {
   var res;
   return (
    res = new String ( this )
        .reverse ()
        .replace ( 
           /([0-9]{3})/gi, 
           '$1.' 
        ).reverse ()
   ).length % 4 > 0
   ? res
   : res.substring(1);
}

alert ( (1000000).format () );

:Y)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Op donderdag 27 juni 2002 10:31 schreef oh,when? het volgende:
waarom heeft iedereen die extra regel nodig:
Ja, waarom eigenlijk? Als ik meerdere methods aan een object toevoeg vind ik dat wel makkelijk:
code:
1
2
3
4
5
6
var stringProto     = String.prototype;
stringProto.reverse = StringReverse;
stringProto.makeOK  = StringMakeOK;
stringProto.read    = StringRead;
stringProto.random  = StringRandom;
etc...

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Op donderdag 27 juni 2002 12:00 schreef Blues het volgende:

[..]

Ja, waarom eigenlijk? Als ik meerdere methods aan een object toevoeg vind ik dat wel makkelijk:
code:
1
2
3
4
5
6
var stringProto     = String.prototype;
stringProto.reverse = StringReverse;
stringProto.makeOK  = StringMakeOK;
stringProto.read    = StringRead;
stringProto.random  = StringRandom;
etc...
Das vooral erg makkelijk voor anderen die je code moeten lezen... moeten ze eerst zoeken welke "alias" jij hebt verzonnen en toegewezen :P Bovendien creeer je dus allemaal globale functie-namen en vervolgens verander je de scope naar een object-method (of je linkt de object-method eigenlijk naar je globale functie).. Nogal verspilling als je het mij vraagt.

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Die extra regel maakt het juist wel korter
code:
1
2
3
4
objProto = mijnObject.prototype;
objProto.melp = function(a, b, c) { }
objProto.woei = function(a, b, c) { }
objProto.kloek = function (a, b, c) { }

stukken korter dan
code:
1
2
3
4
5
6
7
mijnObject.prototype.melp = mijnObjectMelp;
mijnObject.prototype.woei = mijnObjectWoei;
mijnObject.prototype.kloek = mijnObjectKloek;

function mijnObjectMelp(a, b, c) { }
function mijnObjectWoei(a, b, c) { }
function mijnObjectKloek(a, b, c) { }

En onduidelijk kan ik het ook niet vinden op die eerste manier. Het staat (iig doe ik dan) allemaal onder je Object methode, en ik spring meestal ook een tabje in.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Clay:
Die extra regel maakt het juist wel korter
Da's volgens mij weer een andere extra regel dan die oh,when? bedoelde :D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Jah, idd. zie het nu ook :)

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Wat is trouwens het voordeel van
code:
1
2
3
4
5
6
7
8
9
10
11
function Melp ( spef ) {
   this.spef = spef;
}

melpProto = Melp.prototype;
melpProto.woei = function () {
   alert ( this.spef );
}

m = new Melp ( 'sjaak' );
m.woei ();

boven
code:
1
2
3
4
5
6
7
8
9
10
function Melp ( spef ) {
   this.spef = spef;
   
   this.woei = function () {
    alert ( this.spef );
   }
}

m = new Melp ( 'sjaak' );
m.woei ();

:?

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 14:58

Pelle

🚴‍♂️

Op donderdag 27 juni 2002 13:35 schreef drm het volgende:
Wat is trouwens het voordeel van
:?
Volgens mij heeft dat iets met geheugenbeheer te maken; geen idee hoe dat is uit te leggen, maar als je bijvoorbeeld 100 objecten aanmaakt, dan wordt er 100 keer geheugen en processorcycles toegewezen aan die method. Als je alles buiten je object haalt, wordt dit maar 1 keertje gedaan.

Met pellePaint gaf het naar buiten halen van m'n methods op een object een enorme performaceboost.

/edit
Nog een voordeel overigens, je kan je methods nu ook op andere objecten gebruiken doordat je ze niet binnen je object hebt gedefineerd.

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

als je Object methodes defineert _binnen_ de Object functie worden den methodes elke keer als je een object instantie creeert weer toegewezen. Als je dus 20 methoden zo defineert en 20 instanties maakt worden er 20 * 20 = 400 toewijzingen uitgevoerd.
Prototyping defineert object methoden "voor alle instanties", en bij het instantieren van een object "heeft" het object de methode dus gewoon, die wordt niet toegewezen. dus geen 400 losse, maar alleen die eerste 20 van het prototypen worden toegewezen.

Bij kleine hoeveelheden objecten en methoden merkt je het niet zo, maar het wordt al redelijk snel merkbaar.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

ja natuurlijk... logisch... :z

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Een "instantie" van je Object is als je
code:
1
new mijnObject()

doet :)

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Voor wie leg je dat nu uit? :P

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 14:58

Pelle

🚴‍♂️

Op donderdag 27 juni 2002 14:04 schreef Bosmonster het volgende:
Voor wie leg je dat nu uit? :P
Dat is z'n n00b tutorial over objecten in JS, snap dat dan ;)

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Ah.. hoofdstuk 1 is al klaar dus ;)

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Nou er werd gevraagd wat er niet goed is aan:
code:
1
2
3
4
5
6
7
function mijnObject() {
   // ...

   this.methode = function() {
    // ...
   }
}

En daar was dat verhaal een antwoord op :P

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Bosmonster:
Ah.. hoofdstuk 1 is al klaar dus ;)
roflol :D :D :D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1