String_of_float returns undefined :(


#1

Hey guys !

So here’s my problem
This is my code :

let x = string_of_float(88.9);

let clicked(a) =
  if (Element.getInnerHTML(a)=="convertis !"){
    Window.alert(x);
    Element.setInnerHTML(a,"j'ai converit");
  }else{
    Element.setInnerHTML(a,"j'ai converti !");
  };

string_of_float does not work and returns undefiend but when I try with an int and string_of_int it workes fine.Please help I can’t find the source of my problem and I am supposed to work with floats because I shoud make a celsius/fahrenheit converter.

Thanks for your answers !

Ps :These are also my modules

module Element = {
  type elementT;
  [@bs.set] external setInnerHTML : (elementT, string) => unit = "innerHTML";
  [@bs.get] external getInnerHTML : elementT => string = "innerHTML";
  [@bs.set] external setValue : (elementT, string) => unit = "value";
  [@bs.get] external getValue : elementT => string = "value";
  [@bs.send]
  external addEventListener : (elementT, string, Event.eventT => unit) => unit =
    "addEventListener";
};

module Document = {
  [@bs.val]
  external getElementById : string => Element.elementT =
    "document.getElementById";
  [@bs.val]
  external addEventListener : (string, Event.eventT => unit) => unit =
    "document.addEventListener";
};

module Window = {
  type intervalIdT;
  [@bs.val]
  external setInterval : (unit => unit, int) => intervalIdT =
    "window.setInterval";
  [@bs.val]
  external clearInterval : intervalIdT => unit = "window.clearInterval";
  [@bs.val] external alert : string => unit = "alert" ;
};

#2

string_of_float works on the following example

The problem has to come from somewhere else.


#3

Thanks for your answer, I did not find the source of the problem but I did something else to solve it
Thanks anywas :slight_smile: