Добавил еще ведущие нули к миллисекундам, если кому-то еще когда-то этот код понадобится
log = function (text, color, define){ var id, time, thread, logHtml, textLog; define = (typeof define == 'string') ? define.split(/[\s,.|:;]+/g) : define; if(typeof define === 'object' && define !== null){ if(Array.isArray(define)){ id = define.indexOf('id') > -1; time = define.indexOf('time') > -1; thread = define.indexOf('thread') > -1; } else{ id = define.id == true; time = define.time == true; thread = define.thread == true; } } else id = time = thread = true; id = id ? '<a href="action://action' + ScriptWorker.GetCurrentAction() + '" style="color:gray;">[' + ScriptWorker.GetCurrentAction() + ']</a>' : ''; time = time ? ' ' + getTime() : ''; thread = thread ? ' Поток №' + thread_number() : ''; logHtml = (id || time || thread) ? id + '<span style="color: white">' + time + thread + ' : </span>' : ''; logHtml += '<span style="color:' + (color ? color : 'white') + '">' + text + '</span>'; textLog = '[' + ScriptWorker.GetCurrentAction() + ']' + time + thread + ' : ' + text function getTime(){ var checkTime = function(i){ return (i < 10) ? "0" + i : i; }; var checkMilliSeconds = function(ms){ if (ms < 10) { return "00" + ms; } else if (ms < 100) { return "0" + ms; } else { return ms; } }; var d = new Date(); var hh = checkTime(d.getHours()); var mm = checkTime(d.getMinutes()); var ss = checkTime(d.getSeconds()); var ms = checkMilliSeconds(d.getMilliseconds()); return '[' + hh + ':' + mm + ':' + ss + '.' + ms + ']'; }; Logger.WriteHtml(logHtml, textLog); }Как менять падежи слова в зависимости от числа?
-
Я пытался реализовать функцию JavaScript но либо она неправильно построена либо я что-то не там поставил подскажите как правильнее будет реализовать эту функцию в BAS вот ссылка на функцию: https://realadmin.ru/coding/sklonenie-na-javascript.html вот коды моих попыток реализовать ее в BAS:
BAS:[{"name":"","code":"/*Dat:eyJzIjoic2V0dmFyaWFibGUiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiU2V0VmFyaWFibGVOYW1lIiwidHlwZSI6InZhciIsImRhdGEiOiJXT1JEUyJ9LHsiaWQiOiJTZXRWYXJpYWJsZVZhbHVlIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbKFtbU0FWRURfVEVYVF8zXV0gJSAxMDAgPiA0ICYmIFtbU0FWRURfVEVYVF8zXV0gJSAxMDAgPCAyMCkgPyAyIDogWzIsIDAsIDEsIDEsIDEsIDJdWyhbW1NBVkVEX1RFWFRfM11dICUgMTAgPCA1KSA/IE1hdGguYWJzKFtbU0FWRURfVEVYVF8zXV0pICUgMTAgOiA1XV0iLCJjbGFzcyI6ImV4cHJlc3Npb24ifV19*/\nVAR_WORDS = [(VAR_SAVED_TEXT_3 % 100 > 4 && VAR_SAVED_TEXT_3 % 100 < 20) ? 2 : [2, 0, 1, 1, 1, 2][(VAR_SAVED_TEXT_3 % 10 < 5) ? Math.abs(VAR_SAVED_TEXT_3) % 10 : 5]]","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":352833814,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""}]BAS:[{"name":"","code":"/*Dat:eyJzIjoic2V0dmFyaWFibGUiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiU2V0VmFyaWFibGVOYW1lIiwidHlwZSI6InZhciIsImRhdGEiOiJTQVZFRF9URVhUXzMifSx7ImlkIjoiU2V0VmFyaWFibGVWYWx1ZSIsInR5cGUiOiJjb25zdHIiLCJkYXRhIjoiTWF0aC5hYnMoW1tTQVZFRF9URVhUXzNdXSkgJSAxMDAiLCJjbGFzcyI6ImV4cHJlc3Npb24ifV19*/\nVAR_SAVED_TEXT_3 = Math.abs(VAR_SAVED_TEXT_3) % 100","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":425708491,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoic2V0dmFyaWFibGUiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiU2V0VmFyaWFibGVOYW1lIiwidHlwZSI6InZhciIsImRhdGEiOiJOMSJ9LHsiaWQiOiJTZXRWYXJpYWJsZVZhbHVlIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1NBVkVEX1RFWFRfM11dICUgMTAiLCJjbGFzcyI6ImV4cHJlc3Npb24ifV19*/\nVAR_N1 = VAR_SAVED_TEXT_3 % 10","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":104516456,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoiaWYiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiSWZFeHByZXNzaW9uIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1NBVkVEX1RFWFRfM11dID4gMTAgJiYgW1tTQVZFRF9URVhUXzNdXSA8IDIwIiwiY2xhc3MiOiJleHByZXNzaW9uIn0seyJpZCI6IklmRWxzZSIsInR5cGUiOiJjaGVjayIsImRhdGEiOmZhbHNlfV19*/\n_set_if_expression(\"W1tTQVZFRF9URVhUXzNdXSA+IDEwICYmIFtbU0FWRURfVEVYVF8zXV0gPCAyMA==\");\n_if(VAR_SAVED_TEXT_3 > 10 && VAR_SAVED_TEXT_3 < 20,function(){\nsection_insert()\n})!","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":231818192,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoicmV0dXJuIiwidiI6MSwiZiI6W10sInV3IjoiMCIsInV0IjoiMCIsInV0byI6IjAiLCJ1bSI6IjAiLCJkIjpbeyJpZCI6IlJldHVyblZhbHVlIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1RFWFRfRk9STVNdXVsyXSIsImNsYXNzIjoiZXhwcmVzc2lvbiJ9XX0=*/\n_function_return(VAR_TEXT_FORMS[2])","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":231818192,"id":658871391,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoiaWYiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiSWZFeHByZXNzaW9uIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW04xXV0gPiAxICYmIFtbTjFdXSA8IDUiLCJjbGFzcyI6ImV4cHJlc3Npb24ifSx7ImlkIjoiSWZFbHNlIiwidHlwZSI6ImNoZWNrIiwiZGF0YSI6ZmFsc2V9XX0=*/\n_set_if_expression(\"W1tOMV1dID4gMSAmJiBbW04xXV0gPCA1\");\n_if(VAR_N1 > 1 && VAR_N1 < 5,function(){\nsection_insert()\n})!","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":157529525,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoicmV0dXJuIiwidiI6MSwiZiI6W10sInV3IjoiMCIsInV0IjoiMCIsInV0byI6IjAiLCJ1bSI6IjAiLCJkIjpbeyJpZCI6IlJldHVyblZhbHVlIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1RFWFRfRk9STVNdXVsxXSIsImNsYXNzIjoiZXhwcmVzc2lvbiJ9XX0=*/\n_function_return(VAR_TEXT_FORMS[1])","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":157529525,"id":603698305,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoiaWYiLCJ2IjoxLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiSWZFeHByZXNzaW9uIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW04xXV0gPT0gMSIsImNsYXNzIjoiZXhwcmVzc2lvbiJ9LHsiaWQiOiJJZkVsc2UiLCJ0eXBlIjoiY2hlY2siLCJkYXRhIjpmYWxzZX1dfQ==*/\n_set_if_expression(\"W1tOMV1dID09IDE=\");\n_if(VAR_N1 == 1,function(){\nsection_insert()\n})!","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":593072591,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoicmV0dXJuIiwidiI6MSwiZiI6W10sInV3IjoiMCIsInV0IjoiMCIsInV0byI6IjAiLCJ1bSI6IjAiLCJkIjpbeyJpZCI6IlJldHVyblZhbHVlIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1RFWFRfRk9STVNdXVswXSIsImNsYXNzIjoiZXhwcmVzc2lvbiJ9XX0=*/\n_function_return(VAR_TEXT_FORMS[0])","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":593072591,"id":26548607,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""},{"name":"","code":"/*Dat:eyJzIjoicmV0dXJuIiwidiI6MSwiZiI6W10sInV3IjoiMCIsInV0IjoiMCIsInV0byI6IjAiLCJ1bSI6IjAiLCJkIjpbeyJpZCI6IlJldHVyblZhbHVlIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1RFWFRfRk9STVNdXVsyXSIsImNsYXNzIjoiZXhwcmVzc2lvbiJ9XX0=*/\n_function_return(VAR_TEXT_FORMS[2])","internal_label_id":"","dat_precomputed":null,"search_precomputed":null,"code_precomputed":null,"parentid":0,"id":605283543,"donotexecuteduringrecord":false,"is_selected":false,"color":"","is_fold":false,"fd":""}] -
@il16ya said in Как менять падежи слова в зависимости от числа?:
Я пытался реализовать функцию JavaScript но либо она неправильно построена либо я что-то не там поставил подскажите как правильнее будет реализовать эту функцию в BAS вот ссылка на функцию: https://realadmin.ru/coding/sklonenie-na-javascript.html вот коды моих попыток реализовать ее в BAS:

-
@il16ya said in Как менять падежи слова в зависимости от числа?:
@Fox а можно посмотреть содержимое переменной DECLOFNUM?
Можно, только смысл? Используйте переменную с атрибутами, так как в ней функция
-
@il16ya said in Как менять падежи слова в зависимости от числа?:
@Fox а почему у вас в логе не отображаются числа?
Потому что так реализована функция в вашем примере по ссылке. Если нужно, можете добавить вывод цифры вместе с текстом
-
@il16ya said in Как менять падежи слова в зависимости от числа?:
@Fox у меня число в переменной и я не знаю как аккуратно вставить ее в функцию чтобы не сломать ее
А зачем её вообще вставлять в функцию? Поместите её в атрибут вызова функции
[[DECLOFNUM]]([[ВАША_ЦИФРА]], ['минута', 'минуты', 'минут'])
