fbpx
วิกิพีเดีย

มอดูล:Change

คู่มือการใช้งานมอดูล[สร้าง]
-- This implements {{change}} local p = {}  local function ntsh(outvalue)  local sortkey = '0000000000000000000'  if outvalue == nil then  return '<span style="display:none" data-sort-value="' .. sortkey .. '♠"></span>'  end   -- This code was copied from [[Template:Convert]]   if outvalue == 0 then  sortkey = '5000000000000000000'  else  local mag = math.floor(math.log10(math.abs(outvalue)) + 1e-14)  local prefix  if outvalue > 0 then  prefix = 7000 + mag  else  prefix = 2999 - mag  outvalue = outvalue + 10^(mag+1)  end  sortkey = string.format('%d', prefix) .. string.format('%015.0f', math.floor(outvalue * 10^(14-mag)))  end  return '<span style="display:none" data-sort-value="' .. sortkey .. '♠"></span>' end  local function trim(s)  return s:match('^%s*(.-)%s*$') end  local function isnotempty(s)  return s and trim(s) ~= '' end  function change(args)  local rnd = require('Module:Math')._round  local prec_format = require('Module:Math')._precision_format  local lang = mw.getContentLanguage()  local function formatnum(num)  return lang:parseFormattedNumber(num) and lang:formatNum(lang:parseFormattedNumber(num)) or num  end   local errorflag = nil   local dsp = args['disp'] or 'row'  local inv = args['invert'] or 'off'  local srt = args['sort'] or ((isnotempty(args['pre']) or isnotempty(args['sort'])) and 'on' or 'off')  local n1 = (inv == 'on') and tonumber(lang:parseFormattedNumber(args['2'])) or tonumber(lang:parseFormattedNumber(args['1']))  local n2 = (inv == 'on') and tonumber(lang:parseFormattedNumber(args['1'])) or tonumber(lang:parseFormattedNumber(args['2']))  local dec = args['dec'] or '2'  local s = ((args['italics'] or 'off') == 'on' and "''" or "")  .. ((args['bold'] or 'off') == 'on' and "'''" or "")   local pc, pcr, pcrf = 'NA', 'NA'   if n1 and n2 and n1 ~= 0 then  pc = 100*(n2/n1 - 1)  pcr = rnd(pc, dec)  if pcr > 0 then  pcrf = '<span style="color:green">' ..  s .. '+' .. prec_format(pc, dec) .. '%' .. s .. '</span>'  elseif pcr < 0 then  pcrf = '<span style="color:red">' ..  s .. prec_format(pc, dec) .. '%' .. s .. '</span>'  else  pcrf = s .. prec_format(0, dec) .. '%' .. s  end  pcrf = ntsh(pcr) .. pcrf  else  pcrf = ntsh(nil) .. s .. 'NA' .. s  if n1 == nil or n2 == nil then  errorflag = 1  end  end   if dsp == 'out' then  return pcrf, errorflag  else  local pre1 = args['pre1'] or args['pre'] or ''  local pre2 = args['pre2'] or args['pre'] or ''  local suf1 = args['suf1'] or args['suf'] or ''  local suf2 = args['suf2'] or args['suf'] or ''   local rspn = 'rowspan=' .. (args['rowspan'] or '1') .. ' '  local algn = 'text-align:' .. (args['align'] or 'right') .. ';'  local bg = 'background-color:' .. (args['bgcolour'] or args['bgcolor'] or 'inherit') .. ';'   if rspn == 'rowspan=1 ' then rspn = '' end  if bg == 'background-color:inherit;' then bg = '' end  local style = rspn .. 'style="' .. algn .. bg .. '"'   local sk1, sk2 = '', ''   if srt == 'on' then  sk1 = ntsh(n1)  sk2 = ntsh(n2)  end   if n1 ~= nil then  if n1 < 0 then  n1 = '−' .. formatnum(-1*n1)  else  n1 = formatnum(n1)  end  else  n1 = (inv == 'on') and (args['2'] or '') or (args['1'] or '')  end   if n2 ~= nil then  if n2 < 0 then  n2 = '−' .. formatnum(-1*n2)  else  n2 = formatnum(n2)  end  else  n2 = (inv == 'on') and (args['1'] or '') or (args['2'] or '')  end   if dsp == 'row2' then  return style .. '|' .. s .. pre2 .. n2 .. suf2 .. s  .. '\n|' .. style .. '|' .. pcrf, errorflag  else  if inv == 'off' then  return style .. '|' .. s .. pre1 .. n1 .. suf1 .. s  .. '\n|' .. style .. '|' .. s .. pre2 .. n2 .. suf2 .. s  .. '\n|' .. style .. '|' .. pcrf, errorflag  else  return style .. '|' .. s .. pre1 .. n2 .. suf1 .. s  .. '\n|' .. style .. '|' .. s .. pre2 .. n1 .. suf2 .. s  .. '\n|' .. style .. '|' .. pcrf, errorflag  end  end  end end  function p.main(frame)  local res, eflag = change((frame.args[1] or frame.args[2]) and frame.args or frame:getParent().args)  if eflag then  res = res .. frame:expandTemplate{title = 'change/error'}  end  return res end  return p 

มอด, change, อการใช, งานมอด, สร, าง, ณอาจจะต, องการสร, างค, อการใช, งานของมอด, ลน, เข, ยนสามารถทำการทดลองได, กระบะทราย, สร, าง, ดลอก, และช, ดทดสอบ, สร, าง, ของมอด, ลน, โปรดเพ, มหมวดหม, ไปท, หน, าย, อย, หน, าย, อยของมอด, ลน, this, implements, change, local, loc. khumuxkarichnganmxdul srang khunxaccatxngkarsrangkhumuxkarichngankhxngmxdulniphuekhiynsamarththakarthdlxngidthikrabathray srang khdlxk aelachudthdsxb srang khxngmxdulnioprdephimhmwdhmuipthihnayxy doc hnayxykhxngmxdulni This implements change local p local function ntsh outvalue local sortkey 0000000000000000000 if outvalue nil then return lt span style display none data sort value sortkey gt lt span gt end This code was copied from Template Convert if outvalue 0 then sortkey 5000000000000000000 else local mag math floor math log10 math abs outvalue 1e 14 local prefix if outvalue gt 0 then prefix 7000 mag else prefix 2999 mag outvalue outvalue 10 mag 1 end sortkey string format d prefix string format 015 0f math floor outvalue 10 14 mag end return lt span style display none data sort value sortkey gt lt span gt end local function trim s return s match s s end local function isnotempty s return s and trim s end function change args local rnd require Module Math round local prec format require Module Math precision format local lang mw getContentLanguage local function formatnum num return lang parseFormattedNumber num and lang formatNum lang parseFormattedNumber num or num end local errorflag nil local dsp args disp or row local inv args invert or off local srt args sort or isnotempty args pre or isnotempty args sort and on or off local n1 inv on and tonumber lang parseFormattedNumber args 2 or tonumber lang parseFormattedNumber args 1 local n2 inv on and tonumber lang parseFormattedNumber args 1 or tonumber lang parseFormattedNumber args 2 local dec args dec or 2 local s args italics or off on and or args bold or off on and or local pc pcr pcrf NA NA if n1 and n2 and n1 0 then pc 100 n2 n1 1 pcr rnd pc dec if pcr gt 0 then pcrf lt span style color green gt s prec format pc dec s lt span gt elseif pcr lt 0 then pcrf lt span style color red gt s prec format pc dec s lt span gt else pcrf s prec format 0 dec s end pcrf ntsh pcr pcrf else pcrf ntsh nil s NA s if n1 nil or n2 nil then errorflag 1 end end if dsp out then return pcrf errorflag else local pre1 args pre1 or args pre or local pre2 args pre2 or args pre or local suf1 args suf1 or args suf or local suf2 args suf2 or args suf or local rspn rowspan args rowspan or 1 local algn text align args align or right local bg background color args bgcolour or args bgcolor or inherit if rspn rowspan 1 then rspn end if bg background color inherit then bg end local style rspn style algn bg local sk1 sk2 if srt on then sk1 ntsh n1 sk2 ntsh n2 end if n1 nil then if n1 lt 0 then n1 formatnum 1 n1 else n1 formatnum n1 end else n1 inv on and args 2 or or args 1 or end if n2 nil then if n2 lt 0 then n2 formatnum 1 n2 else n2 formatnum n2 end else n2 inv on and args 1 or or args 2 or end if dsp row2 then return style s pre2 n2 suf2 s n style pcrf errorflag else if inv off then return style s pre1 n1 suf1 s n style s pre2 n2 suf2 s n style pcrf errorflag else return style s pre1 n2 suf1 s n style s pre2 n1 suf2 s n style pcrf errorflag end end end end function p main frame local res eflag change frame args 1 or frame args 2 and frame args or frame getParent args if eflag then res res frame expandTemplate title change error end return res end return p ekhathungcak https th wikipedia org w index php title mxdul Change amp oldid 8134829, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม