const charDict = {
a: ['∀', '₳', 'Ä'],
b: ['Ᏸ', 'β', '฿', 'ß'],
c: ['ℭ', 'Ç', 'Ꮸ', '₡'],
d: ['Ɗ', 'Ď', 'Đ'],
e: ['£', 'Ē', 'ξ', 'Ê', 'È', '€', 'É', '∑', 'Ế', 'Ề', 'Ể', 'Ễ'],
f: ['ℱ', '₣', 'ƒ', '∮', 'Ḟ', 'ჶ'],
g: ['Ꮹ', 'Ꮆ', 'Ǥ', '₲'],
h: ['ℍ', 'ℋ', 'ℌ', 'ዙ', 'Ĥ', 'Ħ'],
i: ['ℐ', 'ℑ', 'Ï'],
j: ['ჟ', 'Ĵ'],
k: ['₭', 'Ꮶ', 'Ќ', 'Ķ', 'Ҝ', 'ﻸ'],
l: ['ℒ', 'ℓ', 'Ŀ', '£', 'λ', '₤', 'Ł', 'Ꮭ', '£', 'Ꮑ'],
m: ['ℳ', 'ʍ', 'Ḿ', '爪'],
n: ['ℕ', 'η', 'Ñ', 'Ŋ', 'Ń', 'ℵ', '₦'],
o: ['ტ', 'Ǿ', 'Θ', 'Ø', 'Ό', 'Ở', 'Ờ', 'Ớ', 'Ổ'],
p: ['ℙ', '℘', 'þ', '尸', 'Ҏ', '₱'],
q: ['ℚ', 'Q', 'Q'],
r: ['ℝ', 'ℜ', 'ℛ', '℟', 'ჩ', 'Ꮢ', '尺'],
s: ['Ꮥ', 'Ṧ', 'ى', '§', 'Ś', 'Ŝ', '₰', '∫', '$', 'ֆ'],
t: ['₸', '†', 'T', 'Ţ', 'Ŧ', 'ィ', '干', 'Ṫ', 'テ', '₮'],
u: ['∪', 'Ũ', '⋒', 'Ủ', 'Ừ', 'Ử', 'Ữ', 'Ự', 'Џ'],
v: ['∨', '√', 'Ꮙ', 'Ṽ', '/', '℣'],
w: ['₩', 'Ẃ', 'Ẁ', 'ώ', 'ω', 'Ŵ', 'Ꮤ', 'Ꮃ', 'ฬ', 'Ẅ', 'ѡ', 'Ꮚ', 'Ꮗ', 'ผ', 'ฝ', 'พ', 'ฟ'],
x: ['χ', 'ჯ', 'Ẍ', 'ẍ', 'ᶍ'],
y: ['ɣ', 'Ꭹ', 'Ꮍ', 'Ẏ', 'ẏ', 'ϒ', 'ɤ', '¥', 'り'],
z: ['ℤ', 'ℨ', 'ჳ', '乙', 'Ẑ', 'ẑ', 'ɀ', 'Ꮓ']
}
function replaceChars(str) {
return str.split('').map(char => {
char = char.toLowerCase();
return (char in charDict) ? charDict[char][Math.floor(Math.random() * charDict[char].length)] : char;
}).join('');
}
может есть какие-то утилиты
или практика по данному вопросу
var someItems = _someService.GetList();
foreach (var item in someItems) // item внутри не используется, можно убрать этот foreach
{
var additionalItems = _additionItemsSerivce.GetList();
foreach (var additionalItem in additionalItems)
{
var properties = additionalItem.Properties;
foreach (var property in properties)
{
property.First = true;
property.First = true; // зачем делать одно и тоже два раза?
_additionItemsSerivce.UpdateProperies(additionalItem); // property не используется, значит можно вынести за этот foreach
}
}
}
var additionalItems = _additionItemsSerivce.GetList();
foreach (var additionalItem in additionalItems)
{
var properties = additionalItem.Properties;
foreach (var property in properties)
property.First = true;
_additionItemsSerivce.UpdateProperies(additionalItem);
}
Однако хостинг-провайдерам приходилось в свое время оформлять телематическую лицензию, поскольку наряду с базовыми услугами размещения сайтов провайдеры также предлагают сопутствующие услуги, прописанные в законе «О связи»: предоставление услуг электронной почты и т.д.
var data = {
"ID": "414",
"ELEMENT": {
"5333": {
"ID": "5333",
"sort": 300,
},
"5334": {
"ID": "5334",
"sort": 500,
},
"5335": {
"ID": "5335",
"sort": 100,
}
}
}
// Преобразование объекта в массив
var elementsArray = Object.keys(data.ELEMENT).map(function(key) {
return data.ELEMENT[key];
});
// Сортировка массива по sort
elementsArray.sort(function(a, b) {
return b.sort - a.sort;
});
// Выводим массив в консоль
console.log(elementsArray);