init.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. // 平台
  2. function platform() {
  3. var u = navigator.userAgent;
  4. var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
  5. var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
  6. return isAndroid ? 'android' : (isIOS ? 'ios' : 'unknown');
  7. }
  8. /*自定义存储 【单个】*/
  9. function set(key, val) {
  10. window.localStorage.setItem(key, val)
  11. }
  12. function get(key) {
  13. var data = window.localStorage.getItem(key);
  14. return data;
  15. }
  16. /**
  17. * 把字符串转json object Object '{"a":"001","b":"002"}'
  18. */
  19. function strToJson(str) {
  20. var json = eval('(' + str + ')');
  21. return json;
  22. }
  23. /** 把json转字符串 */
  24. function JsonToStr(json) {
  25. var temp = "{";
  26. var length = Object.keys(json).length;
  27. var index = 0;
  28. for ( var i in json) {
  29. /* 循环遍历对象的属性 */
  30. index++;
  31. if (index == length) {
  32. temp += '"' + i + '"' + ":" + '"' + json[i] + '"';
  33. } else {
  34. temp += '"' + i + '"' + ":" + '"' + json[i] + '",';
  35. }
  36. }
  37. temp += "}";
  38. return temp;
  39. }
  40. /**
  41. * 把字符串转json new
  42. */
  43. function getstrToJson(str) {
  44. var json = JSON.parse(str);
  45. return json;
  46. }
  47. /** 把json转字符串 new */
  48. function setJsonToStr(json) {
  49. var temp = JSON.stringify(json);
  50. return temp;
  51. }
  52. /*
  53. * 自定义存储 【多个】 var map = {}; map["key1"] = "value1";
  54. */
  55. function set_list(valList) {
  56. /** 遍历map */
  57. for ( var prop in valList) {
  58. if (valList.hasOwnProperty(prop)) {
  59. console.log('key is ' + prop + ' and value is' + valList[prop]);
  60. window.localStorage.setItem(prop, valList[prop]);
  61. } else {
  62. alert('no data');
  63. }
  64. }
  65. }
  66. /* 从1970年开始的毫秒数然后截取10位变成 从1970年开始的秒数 */
  67. function get_nowtime() {
  68. var tmp = Date.parse(new Date()).toString();
  69. tmp = tmp.substr(0, 10);
  70. return tmp;
  71. }
  72. /* 将当前时间换成时间格式字符串 */
  73. function get_nowtime(timestamp) {
  74. var date = new Date();
  75. date.setTime(timestamp * 1000);
  76. var seperator1 = "-";
  77. var s_time = date.getFullYear() + seperator1 + (date.getMonth() + 1)
  78. + seperator1 + date.getDate();
  79. return s_time;
  80. }
  81. /* 时间戳转日期 */
  82. function timeToDate(datetime, tmp) {
  83. var time_tmp = new Date(parseInt(datetime) * 1000);
  84. var y = time_tmp.getFullYear();
  85. var m = time_tmp.getMonth() + 1;
  86. var d = time_tmp.getDate();
  87. var h = time_tmp.getHours();
  88. var i = time_tmp.getMinutes();
  89. var s = time_tmp.getSeconds();
  90. if (tmp == 'Y-m-d') {
  91. return y + '-' + timeAddZeor(m) + '-' + timeAddZeor(d);
  92. } else if (tmp == 'Y-m') {
  93. return y + '-' + timeAddZeor(m);
  94. } else {
  95. return y + '-' + timeAddZeor(m) + '-' + timeAddZeor(d) + ' '
  96. + timeAddZeor(h) + ':' + timeAddZeor(i) + ':' + timeAddZeor(s);
  97. }
  98. }
  99. /* 从1970年开始的毫秒数然后截取10位变成 从1970年开始的秒数 */
  100. function get_nowtime_acc() {
  101. var tmp = Date.parse(new Date()).toString();
  102. tmp = tmp.substr(0, 10);
  103. return tmp;
  104. }
  105. function timeAddZeor(m) {
  106. return m < 10 ? '0' + m : m;
  107. }
  108. /* 将当前时间格式字符串 转时间戳 */
  109. function get_unix_time(dateStr) {
  110. var newstr = dateStr.replace(/-/g, '/');
  111. var date = new Date(newstr);
  112. var time_str = date.getTime().toString();
  113. return time_str.substr(0, 10);
  114. }
  115. // 获取当前时间,格式YYYY-MM-DD
  116. function getNowFormatDate() {
  117. var date = new Date();
  118. var seperator1 = "-";
  119. var year = date.getFullYear();
  120. var month = date.getMonth() + 1;
  121. var strDate = date.getDate();
  122. if (month >= 1 && month <= 9) {
  123. month = "0" + month;
  124. }
  125. if (strDate >= 0 && strDate <= 9) {
  126. strDate = "0" + strDate;
  127. }
  128. var currentdate = year + seperator1 + month + seperator1 + strDate;
  129. return currentdate;
  130. }
  131. // 获取前一天时间,格式YYYY-MM-DD
  132. function getNowFormatDate_LAST() {
  133. var date = new Date();
  134. var seperator1 = "-";
  135. var year = date.getFullYear();
  136. var month = date.getMonth() + 1;
  137. var strDate = date.getDate() - 1;
  138. if (month >= 1 && month <= 9) {
  139. month = "0" + month;
  140. }
  141. if (strDate >= 0 && strDate <= 9) {
  142. strDate = "0" + strDate;
  143. }
  144. var currentdate = year + seperator1 + month + seperator1 + strDate;
  145. return currentdate;
  146. }
  147. function removeIndex(key) {
  148. window.localStorage.removeItem(key);
  149. }
  150. function clear() {
  151. window.localStorage.clear();
  152. }
  153. /* 检测字符串是否包含特殊字符 */
  154. function checkStr(str) {
  155. szReg = /[\',:;*?~`!@#$%^&+=)(<>{}]|\]|\[|\/|\\\|\"|\|/;
  156. var bChk = szReg.test(str);
  157. if (!bChk) {
  158. return true;
  159. }
  160. }
  161. /* 检测是否整数 */
  162. function checkAllNum(num) {
  163. szReg = /^-?[0-9]\d*$/;// 整数
  164. var bChk = szReg.test(num);
  165. if (!bChk) {
  166. return true;
  167. }
  168. }
  169. /* 检测是否正整数 含0 */
  170. function checkNum(num) {
  171. szReg = /^\d+(\d+)?$/;// 正整数 含0
  172. var bChk = szReg.test(num);
  173. if (!bChk) {
  174. return true;
  175. }
  176. }
  177. /* 检测是否正整数 不含0 */
  178. function checkNums(num) {
  179. szReg = /^[0-9]*[1-9][0-9]*$/;// 正整数 不含0
  180. var bChk = szReg.test(num);
  181. if (!bChk) {
  182. return true;
  183. }
  184. }
  185. /* 检测是否数值为金额 */
  186. function checkMoney(money) {
  187. szReg = /^\d+(\.\d+)?$/;
  188. var bChk = szReg.test(money);
  189. if (!bChk) {
  190. return true;
  191. }
  192. }
  193. /* 检测字符串是否邮箱 */
  194. function checkEmail(email) {
  195. szReg = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  196. var bChk = szReg.test(email);
  197. if (!bChk) {
  198. return true;
  199. }
  200. }
  201. /* 检测手机号 */
  202. function checkPhone(phone) {
  203. szReg = /^((1[3,5,8][0-9])|(14[5,7])|(17[0,6,7,8]))\d{8}$/;
  204. var bChk = szReg.test(phone);
  205. if (!bChk) {
  206. return true;
  207. }
  208. }
  209. /* 检测身份证号码 */
  210. function checkIdcard(Idcard) {
  211. szReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
  212. var bChk = szReg.test(Idcard);
  213. if (!bChk) {
  214. return true;
  215. }
  216. }
  217. /* 检测银行卡号 */
  218. function checkBank(Bank) {
  219. szReg = /^(\d{16}|\d{19})$/;
  220. var bChk = szReg.test(Bank);
  221. if (!bChk) {
  222. return true;
  223. }
  224. }
  225. /*动态添加json数据*/
  226. //参数:json = 数组,prop = 属性,val = 值
  227. function createJson(json, prop, val) {
  228. // 如果 val 被忽略
  229. if(typeof val === "undefined") {
  230. // 删除属性
  231. delete json[prop];
  232. }
  233. else {
  234. // 添加 或 修改
  235. json[prop] = val;
  236. }
  237. return json;
  238. }
  239. //rem
  240. (function (doc, win) {
  241. var docEl = doc.documentElement,
  242. resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
  243. recalc = function () {
  244. var clientWidth = docEl.clientWidth;
  245. if (!clientWidth) return;
  246. docEl.style.fontSize = 16 * (clientWidth / 320)+ 'px';
  247. };
  248. if (!doc.addEventListener) return;
  249. win.addEventListener(resizeEvt, recalc, false);
  250. doc.addEventListener('DOMContentLoaded', recalc, false);
  251. })(document, window);