12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- function deepCopy(source) {
- if (!source) {
- return null
- }
- var result
- source instanceof Array ? (result = []) : (result = {})
- for (var key in source) {
- result[key] = typeof source[key] === 'object' ? deepCopy(source[key]) : source[key]
- }
- return result
- }
- export default {
- formatDateByPattern: function(date, pattern) {
- let fmt = pattern
- var o = {
- 'M+': date.getMonth() + 1, //月份
- 'd+': date.getDate(), //日
- 'H+': date.getHours(), //小时
- 'm+': date.getMinutes(), //分
- 's+': date.getSeconds(), //秒
- 'q+': Math.floor((date.getMonth() + 3) / 3), //季度
- S: date.getMilliseconds() //毫秒
- }
- if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
- for (var k in o)
- if (new RegExp('(' + k + ')').test(fmt))
- fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length))
- return fmt
- },
- deepCopy: deepCopy,
- /**
- * 找出数组arr中第一个属性key的值等于val的元素的下标
- * @param {*} arr 数组
- * @param {*} key 属性
- * @param {*} val 值
- */
- indexInArray: function(arr, key, val) {
- if (!arr || !arr.length || arr.length == 0) {
- return -1
- } else {
- for (let index = 0; index < arr.length; index++) {
- const element = arr[index]
- if (key in element && element[key] == val) {
- return index
- }
- }
- }
- return -1
- },
- /**
- * 找出数组arr中第一个属性key的值等于val的元素
- * @param {*} arr 数组
- * @param {*} key 属性名
- * @param {*} val 属性值
- */
- itemInArray: function(arr, key, val) {
- for (let index = 0; index < arr.length; index++) {
- const element = arr[index]
- if (key in element && element[key] == val) {
- return element
- }
- }
- return null
- },
- /**
- * 从数组中将属性key的值等于val的元素删除
- * @param {*} arr 数组
- * @param {*} key 属性名
- * @param {*} val 属性值
- */
- deleteInArray: function(arr, key, val) {
- if (!arr || !arr.length || arr.length == 0) {
- return
- } else {
- for (let index = arr.length - 1; index > -1; index--) {
- const element = arr[index]
- if (element[key] && element[key] == val) {
- arr.splice(index, 1)
- }
- }
- }
- }
- }
|