ebody: Welche Sprache/Technologie ist das?

Hallo,

welche Sprache/Technologie ist das?

assert.equal("2,00",format(undefined));

assert.equal() scheint node.js zu sein.

format() finde ich aber nirgends bei node.js, auch nicht bei JS, Python oder Typescript...

Gruß ebody

  1. Hallo,

    welche Sprache/Technologie ist das?

    assert.equal("2,00",format(undefined));
    

    Es kann jede Programmiersprache sein, die

    1. ein Objekt „assert“ hat oder in welcher man es erzeugen kann, welches

    2. eine Methode „equal“ hat oder in welcher man dieses erzeugen kann, die wiederum

    3. zwei Parmeter verträgt von denen einer eine funktion „format“ sein kann, welche die Sprache kennt oder die man in dieser erzeugen kann und die

    4. etwas wie „undefined“ als Parameter verträgt, was wiederum, eine Variable oder Konstante sein kann.

    5. Das klarsten Merkmale sind also, dass Objekt und Methode durch einen Punkt verkettet werden, dass die Methode wie auch die Funktion geklammerte Parameter erwartet.

    Es ist also nicht PHP, es ist nicht das alte BASIC, auch kein Perl. Aber sonst kommt von JS über Python bis Java, sogar Visual Basic, auch Visual Basic for Applications Allerhand in Betracht und diese Liste ist lange noch nicht fertig. Du kannst Dich mit den ersten beiden Sätzen auf die Suche machen oder die Quäle quellen. Letzteres führt mutmaßlich zum Erfolg.

    Vermutlich ist es aber JS: Die gezeigten Begriffe „assert.equal()“ und „undefined“ legen das nahe. Nur kann das - aus der gezeigten Zeile heraus - eben niemand beweisen.

  2. Hallo ebody,

    Hast du nur diese eine Zeile? Oder gibt's auch Kontext?

    Die format Funktion muss nicht aus dem Umfeld der verwendeten Sprache/Laufzeitumgebung kommen, es kann auch ein Eigengewächs der Quelle sein. Angesichts der Merkwürdigkeit, dass die Gleichheit von "2,00" und format(undefined) sicher gestellt werden soll, ist das sogar recht wahrscheinlich.

    Es sei denn, dieses assert.equal tut nicht das, was erfahrungsgemäß davon zu erwarten wäre.

    Rolf

    --
    sumpsi - posui - obstruxi
    1. Hallo Rolf,

      ich habe tatsächlich nur diese Zeile. Was meinst du mit

      Eigengewächs der Quelle

      Gruß ebody

      1. Was meinst du mit

        Eigengewächs der Quelle

        Punkt 3, zweite Variante: Eine selbst definierte Funktion.

        ich habe tatsächlich nur diese Zeile.

        Man hat nie nur diese Zeile. Es sei denn es ist ein (wieder) gefundener Notizzettel. Den kannst Du aber wegwerfen, weil, wie Rolf schon schrieb, eben die Assertion, dass just der String "2,00" irgendeinem „nicht definiert“ entspricht, welches wie auch immer formatiert sei, höchst krude ist.

        Vielleicht ist es ja ein durch ein ganzes Blumenfeld, mithin höflich notiertes „Du machst da Unsinn.“, also eine Pseudoprogrammiersprache.

      2. Hallo ebody,

        ich habe tatsächlich nur diese Zeile.

        Quatsch. Wie das Raketenposting besagt: Man hat nie nur eine Zeile.

        Vielleicht hast Du nur eine Zeile Code. Aber der hat Kontext. Er klebte sicherlich nicht auf einem PostIt heute morgen an der Windschutzscheibe deines Autos (oder an der Tür zum Fahrradkeller).

        Aber ich denke, das Wesentliche haben wir 'rausbekommen. Es ist mutmaßlich ein Unit-Test für eine format-Funktion, und die Sprache ist mutmaßlich JavaScript (wegen des undefined-Literals).

        Ob es krude oder im Kontext der Anwendung sinnvoll ist, aus undefined ein "2,00" zu machen, ist eine offene Frage, die aber für deine Problemstellung nicht wirklich relevant ist.

        Rolf

        --
        sumpsi - posui - obstruxi
        1. Hallo,

          ich habe tatsächlich nur diese Zeile.

          Quatsch. Wie das Raketenposting besagt: Man hat nie nur eine Zeile.

          Vielleicht hast Du nur eine Zeile Code. Aber der hat Kontext. Er klebte sicherlich nicht auf einem PostIt heute morgen an der Windschutzscheibe deines Autos (oder an der Tür zum Fahrradkeller).

          und selbst wenn: Auch das wäre ein Kontext.
          Ob er irgendeinen Sinn ergibt, ist eine andere Frage.

          Einen schönen Tag noch
           Martin

          --
          Zucker ist das Zeug, das den Kaffee bitter macht, wenn man es weglässt.
          1. Hallo Martin,

            na ja, manche Fahrräder könnten schon eine Formatierung vertragen. 😀

            Gruß
            Jürgen

  3. @@ebody

    welche Sprache/Technologie ist das?

    assert.equal("2,00",format(undefined));
    

    Ein Unit-Test?

    🖖 Живіть довго і процвітайте

    --
    When the power of love overcomes the love of power the world will know peace.
    — Jimi Hendrix
    1. Hallo Gunnar,

      da dürftest Du zu 99% recht haben.

      Rolf

      --
      sumpsi - posui - obstruxi
  4. Hattest Du oder jemand zufällig etwas wie

    function toBrutto () { 
        einzelpreis_netto = document.getElementById('einzelpreis').value,
        config_ust_normal = .19
    ) {
    
        if ( Number( einzelpreis_netto ) ) {
            einzelpreis_brutto = einzelpreis_netto * ( 1 + config_ust_normal )
        } 
        return einzelpreis_brutto;
    }
    
    console.log( toBrutto() );
    

    gepostet und den „einsilbig“ anmutenden Halbzeiler als Antwort auf die Frage erhalten, warum da 'ReferenceError: einzelpreis_brutto is not defined' kommt, wenn Du „2,00“ in das Formularfeld eingibst - indes '2.38', wenn Du nur eine „2“ eingibst?