common_util.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /**
  2. * Created by CSL on 2017-06-06.
  3. * public functions for web.
  4. */
  5. // 忽略大小写判断字符串是否和参数指定的字符串相同
  6. String.prototype.sameText = function (str) {
  7. return this.toLowerCase() == str.toLowerCase();
  8. };
  9. // 忽略大小写判断字符串是否有参数指定的子串
  10. String.prototype.hasSubStr = function (str) {
  11. return this.toLowerCase().indexOf(str.toLowerCase()) > -1;
  12. };
  13. // 判断字符串是否是数字形式的字符串
  14. String.prototype.isNumberStr = function () {
  15. return this == +this;
  16. };
  17. // 树结点计算时,取费会出现值为NaN的情况,导致往父节点汇总(递归相加)会出现错误。
  18. function parseFloatPlus(value){
  19. let rst = parseFloat(value);
  20. return isNaN(rst) ? 0 : rst;
  21. };
  22. // 数组合并,并去重复。
  23. Array.prototype.merge = function (arr) {
  24. if (arr.length > 0){
  25. for (let e of arr){
  26. if (!this.includes(e)) this.push(e);
  27. };
  28. }
  29. };
  30. // 数组是否包含另一个数组。
  31. Array.prototype.hasSubArr = function (subArr){
  32. for(var i = 0, len = subArr.length; i < len; i++){
  33. if(this.indexOf(subArr[i]) == -1) return false;
  34. }
  35. return true;
  36. };
  37. function seqString(num,length){
  38. var numstr = num.toString();
  39. var l=numstr.length;
  40. if (numstr.length>=length) {return numstr;}
  41. for(var i = 0 ;i<length - l;i++){
  42. numstr = "0" + numstr;
  43. }
  44. return numstr;
  45. };
  46. function customRowHeader(sheet, dataLength) {
  47. for (let i = 0; i < dataLength; i++) {
  48. sheet.setValue(i, 0, `F${i + 1}`, GC.Spread.Sheets.SheetArea.rowHeader);
  49. }
  50. }