![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /var/www/html/tech_preview/hr/ |
Upload File : |
var function_extra = {}; function_extra.LEFT = function(st, index){ if (index === undefined) index = 1; return st.substr(0, index); }; function_extra.LEFT.descriptor = { desc: "", argNames: ["str", "index"], argDescriptors:{ str: "Chuỗi đầu vào", index: "Vị trí kết thúc" }, returns: "Trả về phần đầu" }; function_extra.LEN = function(st){ return st.length; }; function_extra.LEN.descriptor = { desc: "", argNames: ["str"], argDescriptors:{ str: "Chuỗi đầu vào" }, returns: "Trả về độ dài chuỗi" }; function_extra.LOWER = function(st){ return st.toLowerCase(); }; function_extra.LOWER.descriptor = { desc: "", argNames: ["str"], argDescriptors:{ str: "Chuỗi đầu vào" }, returns: "Trả về chuỗi viết thường" }; function_extra.MID = function(st, start_num, num_chars){ if (start_num > st.length) return ""; if (start_num < 1 || num_chars < 0) return null; return st.substr(start_num - 1, num_chars); }; function_extra.MID.descriptor = { desc: "", argNames: ["str", "start_index", "num_chars"], argDescriptors:{ str: "Chuỗi đầu vào", start_index: "Vị trí bắt đầu", num_chars: "Số lượng ký tự" }, returns: "Trả về chuỗi" }; function_extra.RIGHT = function(st, num_chars){ if (num_chars === undefined) num_chars = 1; if (num_chars > st.length) return st; return st.substr(st.length - num_chars, num_chars); }; function_extra.RIGHT.descriptor = { desc: "", argNames: ["str", "num_chars"], argDescriptors:{ str: "Chuỗi đầu vào", num_chars: "Số lượng ký tự" }, returns: "Trả về chuỗi kết thúc" }; function_extra.SEARCH = function(find_text, st, start_num){ st = st.toLowerCase(); find_text = find_text.toLowerCase(); if (start_num === undefined) start_num = 1; if (start_num <= 0 || start_num > st.length) return null; st = st.substr(start_num - 1); var x = st.indexOf(find_text); if (x < 0) return null; return x + start_num; }; function_extra.SEARCH.descriptor = { desc: "", argNames: ["find_text", "str", "start_index"], argDescriptors:{ find_text: "Chuỗi cần tìm", str: "Chuỗi đầu vào", start_index: "Vị trí bắt đầu tìm kiếm" }, returns: "Trả về vị trí bắt đầu của chuỗi cần tìm trong chuỗi ban đầu" }; function_extra.VSEARCH = function(find_text, st, start_num){ st = absol.string.nonAccentVietnamese(st.toLowerCase()); find_text = absol.string.nonAccentVietnamese(find_text.toLowerCase()); if (start_num === undefined) start_num = 1; if (start_num <= 0 || start_num > st.length) return null; st = st.substr(start_num - 1); function_extra.x = st.indexOf(find_text); if (x < 0) return null; return x + start_num; }; function_extra.VSEARCH.descriptor = { desc: "Tìm kiếm không tính hoa thường, tiếng việt", argNames: ["find_text", "str", "start_index"], argDescriptors:{ find_text: "Chuỗi cần tìm", str: "Chuỗi đầu vào", start_index: "Vị trí bắt đầu tìm kiếm" }, returns: "Trả về vị trí bắt đầu của chuỗi cần tìm trong chuỗi ban đầu" }; function_extra.UPPER = function(st){ return st.toUpperCase(); }; function_extra.UPPER.descriptor = { desc: "", argNames: ["str"], argDescriptors:{ str: "Chuỗi đầu vào" }, returns: "Chuỗi viết hoa" }; function_extra.RAND = function(){ return Math.random(); }; function_extra.RAND.descriptor = { desc: "", argNames: [], argDescriptors: {}, returns: "Số ngẫu nhiên" }; function_extra.RANDBETWEEN = function(bottom, top){ if (top < bottom) return null; return parseInt(Math.random()*(top + 1 - bottom) + bottom, 10); }; function_extra.RANDBETWEEN .descriptor = { desc: "", argNames: ["bottom", "top"], argDescriptors:{ bottom: "Số chặn dưới", top: "Số chặn trên" }, returns: "Số nguyên ngẫu nhiên trong khoảng" }; function_extra.ROUND = function (number, num_digits) { if (!EncodingClass.type.isNumber(number)) return null; if (number < 0) return - function_extra.ROUND(-number, num_digits); number = number*Math.pow(10, num_digits); number = Math.round(number); number = number/Math.pow(10, num_digits); return number; }; function_extra.ROUND.descriptor = { desc: "Làm tròn số thập phân", argNames: ["number", "num_digits"], argDescriptors:{ number: "Số đầu vào", num_digits: "Số chữ số cần làm tròn" }, returns: "Số đã làm tròn" }; function_extra.SUM = function(arr){ if (!EncodingClass.type.isArray(arr)) return null; var res = 0; for (var i = 0; i < arr.length; i++){ if (!EncodingClass.type.isNumber(arr[i])) return null; res += arr[i]; } return res; }; function_extra.SUM.descriptor = { desc: "Tính tổng", argNames: ["...args"], argDescriptors: { "...args": { type: "number[]" } }, returns: "Trả về tổng các số" }; function_extra.AVERAGE = function(arr){ if (!EncodingClass.type.isArray(arr)) return null; var res = 0; for (var i = 0; i < arr.length; i++){ if (!EncodingClass.type.isNumber(arr[i])) return null; res += arr[i]; } return res/arr.length; }; function_extra.AVERAGE.descriptor = { desc: "Tính trung bình", argNames: ["...args"], argDescriptors: { "...args": { type: "number[]" } }, returns: "Trả về trung bình các số" }; function_extra.COUNT = function(arr){ var res = 0; for (var i = 0; i < arr.length; i++){ if (arr[i] === null) continue; //coi lai undefined thi co tinh ko? res++; } return res; }; function_extra.COUNT.descriptor = { desc: "Tính số lượng phân tử", argNames: ["...args"], argDescriptors: { "...args": { type: "number[]" } }, returns: "Trả về số lượng phần tử" }; function_extra.MAX = function(arr){ var res = Number.NEGATIVE_INFINITY; for (var i = 0; i < arr.length; i++){ if (isNaN(arr[i])) return null; if (arr[i] > res) res = arr[i]; } return res; }; function_extra.MAX.descriptor = { desc: "Tìm số lớn nhất", argNames: ["...args"], argDescriptors: { "...args": { type: "number[]" } }, returns: "Trả về số lớn nhất" }; function_extra.MIN = function(arr){ var res = Number.POSITIVE_INFINITY; for (var i = 0; i < arr.length; i++){ if (isNaN(arr[i])) return null; if (arr[i] < res) res = arr[i]; } return res; }; function_extra.MIN.descriptor = { desc: "Tìm số nhỏ nhất", argNames: ["...args"], argDescriptors: { "...args": { type: "number[]" } }, returns: "Trả về số nhỏ nhất" }; function_extra.FNAME = function(st){ var s = st.split(" "); return s[0]; }; function_extra.FNAME.descriptor = { desc: "", argNames: ["str"], argDescriptors: {}, returns: "" }; function_extra.LNAME = function(st){ var s = st.split(" "); return s[s.length - 1]; }; function_extra.LNAME.descriptor = { desc: "", argNames: ["str"], argDescriptors: {}, returns: "" }; function_extra.AND = function(arr){ for (var i = 0; i < arr.length; i++){ if (!arr[i]) return false; } return true; }; function_extra.AND.descriptor = { desc: "", argNames: ["...args"], argDescriptors: {}, returns: "" }; function_extra.OR = function(arr){ for (var i = 0; i < arr.length; i++){ if (arr[i]) return true; } return false; }; function_extra.OR.descriptor = { desc: "", argNames: ["...args"], argDescriptors: {}, returns: "" }; function_extra.NOT = function(x){ return !x; }; function_extra.NOT.descriptor = { desc: "", argNames: ["x"], argDescriptors: {}, returns: "" }; function_extra.TODAY = function(){ return new Date(); }; function_extra.TODAY.descriptor = { desc: "", argNames: [], argDescriptors: {}, returns: "" };