переименовать 6.0 в 5.2

This commit is contained in:
2022-05-12 14:37:41 +03:00
parent 49be2c95d2
commit 10ce3ed32f
33 changed files with 4 additions and 4 deletions

View File

@@ -0,0 +1,86 @@
var мир = {};
мир.uuid = function()
{
// https://stackoverflow.com/a/2117523
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(
/[xy]/g,
function(c)
{
var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
return v.toString(16);
}
);
};
мир.вZ64 = function(строка)
{
var байты = new TextEncoder("utf-8").encode(строка);
var архив = pako.deflate(байты, { to: 'string' });
return base64js.fromByteArray(архив);
};
мир.изZ64 = function(строка)
{
var архив = base64js.toByteArray(строка);
var байты = pako.inflate(архив);
return new TextDecoder("utf-8").decode(байты);
};
мир.задатьПолныйКлюч = function(словарь, полныйКлюч, значение) {
var путь = полныйКлюч.split(".");
var пройти = путь.length - 1;
var вложенность = словарь;
for (var номер = 0; номер < пройти; ++номер)
{
var ключ = путь[номер];
if (!(ключ in вложенность))
{
вложенность[ключ] = {};
вложенность = вложенность[ключ];
}
}
// Значение в конце вложенности.
var ключ = путь[пройти];
вложенность[ключ] = значение;
};
мир.назначитьКнопкамСобытия = function(события, список)
{
for (var номер in список)
{
const пара = список[номер];
var кнопка = document.getElementById(пара[0]);
кнопка.addEventListener("click", function(_) {
события.уведомить(пара[1]);
});
}
};
мир.параметрыЗапуска = function()
{
var параметры = {};
var запрос = window.location.search.substring(1);
var аргументы = запрос.split("&");
for (var номер in аргументы)
{
var арг = аргументы[номер];
var позицияЗнака = арг.indexOf("=");
// Лишь ключ.
if (позицияЗнака == -1)
{
var ключ = decodeURIComponent(арг);
параметры[ключ] = null;
}
// Ключ со значением.
else
{
var сыройКлюч = арг.slice(0, позицияЗнака);
var сыроеЗначение = арг.slice(позицияЗнака + 1);
var ключ = decodeURIComponent(сыройКлюч);
var значение = decodeURIComponent(сыроеЗначение);
параметры[ключ] = значение;
}
}
return параметры;
};