Вот когда кажется
https://learn.javascript.ru/number
Все числа в JavaScript, как целые так и дробные, имеют тип Number и хранятся в 64-битном формате IEEE-754, также известном как «double precision».
Ключевое слово decimal обозначает 128-разрядный тип данных. По сравнению с типами данных с плавающей запятой, диапазон значений типа decimal меньше, а точность выше, благодаря чему этот тип подходит для финансовых расчетов. В следующей таблице представлен приблизительный диапазон значений и точность для типа decimal
Мы то говорим о браузерах. А для поддержки пайпов нужно писать плагин.
Для воспроизведения моего примера нужно вызвать синхронно
var request = new XMLHttpRequest();
request.open('GET', '/bar/foo.txt', false); // `false` makes the request synchronous
request.send(null);
if (request.status === 200) {
result+=Number(request.responseText);
}
Кстати говоря о out process мы то говорим о поддержке браузером протоколов.
А в нем только HTTP. Могу завтра проверить скрорсть передачи и получении числа.
Если Number поддерживает Decimal, то могу передавать на строну CEF бинарные данные, из CEF преобразовывать в объект со строковым представлением числа и флагом, что это Decimal. На стороне JS парсить по аналогии с Json. Нет проблем.
Вот а как раз и предлагаю замену COM на линукс.
И какие проблемы с масштабированием на локальном компьютере?
А меня и их очень волнуют.
Поверь 1С никам это доставляет большие проблемы. Таких как я очень мало.
Опять же я тебя не заставляю пользоваться моим продуктом.
Еще раз я тебе уже расписывал.
На стороне CEF я могу сохранить ссылку
Создадим класс
Class JSObjectProxy
{
//
CefRefPtr<CefV8Value> JSObject;
vector<JSObjectProxy*> listProxy;
CefRefPtr<CefV8Context> context; // Или один класс содержащий контекст
// Этот метод дергаем из .Net Core
bool CallJsMethod(wchar_t* method,tvarstruct* params, int argCount,wchar_t** Error)
{
здесь вызываем
JSObject_->ExecuteFunctionWithContext(callback_context_, NULL, args, retval, exception, false))
и если функция возвращает в retval JSObject то создаем JSObjectProxy
и добавляем его в listProxy, что бы ссылка не обнулилась.
}
}
vector<JSObjectProxy*> это вектор который создается в Методе Exexute
члены которого будут уничтожаться при выходе из метода.
Тогда и не говори, что COM никому не нужен.
Вэб или http сервисы значительнее неудобнее COM.
При этом с СОМ легко справится любой 1С ник. А вот писать Вэб или http севисы на других языках могут единицы.
class ХранилищеОбъектов
{
const int НачальноеКоличествоЭлементов = 64;
ЭлементХранилища[] Элементы = new ЭлементХранилища[НачальноеКоличествоЭлементов];
internal int КоличествоЭлементов = 0;
int РазмерМассива = НачальноеКоличествоЭлементов;
internal int FirstDeleted = -1;
static SpinLock sl = new SpinLock();
Но нужно вручную из него удалять. К сожалению в JS нет финализатора или подсчета ссылок. В Electron есть
https://learn.javascript.ru/number
Все числа в JavaScript, как целые так и дробные, имеют тип Number и хранятся в 64-битном формате IEEE-754, также известном как «double precision».
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Number
Number.isSafeInteger() Определяет, является ли переданное значение безопасным целым числом (числом в диапазоне от -(2:53 — 1) до 2^53 — 1).
https://msdn.microsoft.com/ru-ru/library/364x0z75.aspx
Ключевое слово decimal обозначает 128-разрядный тип данных. По сравнению с типами данных с плавающей запятой, диапазон значений типа decimal меньше, а точность выше, благодаря чему этот тип подходит для финансовых расчетов. В следующей таблице представлен приблизительный диапазон значений и точность для типа decimal
Для воспроизведения моего примера нужно вызвать синхронно
Или предлагай свой вариант.
А в нем только HTTP. Могу завтра проверить скрорсть передачи и получении числа.
В CEF есть только Double и Int
Ну так я и пушу на TypeScript,C++
,C#
Угу и как JS сконвертирует число которое не подходит под Double?
Зачем мне вообще вебсервисы если я все выполняю локально?
Я 1С ник и программирую на многих языках.
При этом напиши удобную сериализацию десериализацию из браузера.
Твои предложения по текущей ситуации
И какие проблемы с масштабированием на локальном компьютере?
А меня и их очень волнуют.
Поверь 1С никам это доставляет большие проблемы. Таких как я очень мало.
Опять же я тебя не заставляю пользоваться моим продуктом.
Я в свое время мерял скорость она была ниже 1k/
На стороне CEF я могу сохранить ссылку
Создадим класс
и если функция возвращает в retval JSObject то создаем JSObjectProxy
и добавляем его в listProxy, что бы ссылка не обнулилась.
}
}
vector<JSObjectProxy*> это вектор который создается в Методе Exexute
члены которого будут уничтожаться при выходе из метода.
Ну и я передаю в виде строки.
Вэб или http сервисы значительнее неудобнее COM.
При этом с СОМ легко справится любой 1С ник. А вот писать Вэб или http севисы на других языках могут единицы.
Там организация достаточно простая спис
Но нужно вручную из него удалять. К сожалению в JS нет финализатора или подсчета ссылок. В Electron есть