Поскольку этот поток немного разветвился в общем обсуждении текущих реализаций с плавающей запятой, я бы добавил, что есть проекты по исправлению их проблем.
Взгляните на https: // posithub.org/, который демонстрирует тип номера, называемый posit (и его предшественник unum), который обещает предложить лучшую точность с меньшим количеством бит. Если мое понимание верное, оно также фиксирует проблемы в вопросе. Весьма интересный проект, человек, стоящий за ним, является математиком Dr. Джон Густафсон . Все это с открытым исходным кодом, с множеством реализаций в C / C ++, Python, Julia и C # ( https://hastlayer.com/arithmetics ).
Похоже, вы объединяете кучу разных применений RequireJS:
npm install requirejs
, а затем у вашего HTML-файла есть элемент script
, который указывает на node_modules/requirejs/require.js
. Точно так же, как вы показываете в своем фрагменте кода. Вот и все. Это говорит о том, что мне не нравится node_modules
в том, что я развертываю, поэтому я обычно использую копию процесса сборки require.js
в другом месте. foo
, выполнив require('foo')
. Вы устанавливаете RequireJS и загружаете его как requirejs
. Как вы загружаете foo
с помощью RequireJS? Вы можете просто сделать requirejs('foo')
. До тех пор, пока RequireJS не найдет его через свою собственную конфигурацию, он выдает в качестве последнего средства вызов собственного узла require
и загрузит его таким образом? Вот иллюстрация. Установите RequireJS с npm install requirejs
. Создайте этот файл: var requirejs = require("requirejs");
var fs = requirejs("fs");
console.log(fs);
Затем запустите его. Вы попадете на модуль консоли fs
в консоли. define
. Недавно я загрузил merge-options
в один из моих проектов с помощью gulp-wrap-amd
. merge-options
является модулем CommonJS. Он не поддерживает RequireJS из коробки, но если вы завернете его вызовом define
, он будет работать. C. Это может потребовать что-то более сложное, прежде чем оно будет загружено в браузере. Например, если модуль полагается на модуль Node fs
, вам придется предоставить замену для fs
, которая выполняется в браузере. Вероятно, он будет содержать поддельную файловую систему для вашего кода.