资讯专栏INFORMATION COLUMN

JavaScript常用工具方法

FrancisSoung / 795人阅读

摘要:通用日期时间类方法月份日小时分秒季度毫秒测试重写函数防抖函数节流点击页面随机显示字符串鼠标点击特效富强民主文明和谐自由平等公正法治爱国敬业诚信友善吻我爱你

通用日期时间类方法
function dateFormat(val, format) {
  let date = new Date(val)
  let 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(format)) {
    format = format.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length))
  }
  for (var k in o) {
    if (new RegExp(`(${k})`).test(format)) {
      format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)))
    }
  }
  return format
}

测试

var datetime = new Date().getTime()
var date1 = dateFormat(datetime, "yyyy.MM.dd hh:mm:ss")
var date2 = dateFormat(datetime, "yyyy-MM-dd hh:mm:ss")
var date3 = dateFormat(datetime, "yyyy-MM-dd")
console.log(date1) // 2018.04.27 16:38:35
console.log(date2) // 2018-04-27 16:38:35
console.log(date3) // 2018-04-27
重写console.log
console.log = (function(oriLogFunc){
    return function(str)
    {
        oriLogFunc.call(console,"hello:"+str);
    }
})(console.log);
console.log("userName")
函数防抖
export function debounce(func, delay) {
  let timer

  return function (...args) {
    if (timer) {
      clearTimeout(timer)
    }
    timer = setTimeout(() => {
      func.apply(this, args)
    }, delay)
  }
}
函数节流
var throttle = function(delay, action){
  var last = 0
  return function(){
    var curr = +new Date()
    if (curr - last > delay){
      action.apply(this, arguments)
      last = curr 
    }
  }
}
点击页面随机显示字符串

/* 鼠标点击特效 */
var a_idx = 0;
jQuery(document).ready(function($) {
    $("body").click(function(e) {
function RndNum(n){
 var rnd="";
 for(var i=0;i").text(a[a_idx]);
        a_idx = (a_idx + 1) % a.length;
var x = e.pageX,
        y = e.pageY;
        $i.css({
"z-index": 999,
"top": y - 30,
"left": x,
"position": "absolute",
"font-weight": "bold",
"color": a_color
        });
        $("body").append($i);
        $i.animate({
"top": y - 190,
"opacity": 0
        },
        1500,
function() {
            $i.remove();
        });
    });
});

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/94651.html

相关文章

  • JavaScript发展史,JavaScript组成和开发工具介绍-乐字节

    摘要:保持与和的相似性,以便开发人员能很快学会。年,网景公司的布兰登与公司联手开发一个称为的脚本语言。当时微软决定进军浏览器,发布了并搭载了一个的克隆版,叫做。在微软进入后,有种不同的版本同时存在以及。 一、JavaScript简介 JavaScript 是一种具有面向对象能力的、解释型的程序设计语言。更具体一点,它是基于对象和事件驱动并具有相对安全性的客户端脚本语言。它的主要目的是,验证发...

    Heier 评论0 收藏0
  • Javascript字符串常用方法详解

    摘要:属性里的字符串类似于数组,都是一个一个字符拼凑在一起组成的,因此可以用属性取得字符串的长度字符串常用的一些方法返回字符串的第个字符,如果不在之间,则返回一个空字符串。如果匹配成功,则返回正则表达式在字符串中首次匹配项的索引否则,返回。 字符串 字符串就是一个或多个排列在一起的字符,放在单引号或双引号之中。 abc abc length属性js里的字符串类似于数组,都是一个一个字...

    Wildcard 评论0 收藏0
  • javascript功能插件大集合 前端常用插件 js常用插件

    摘要:转载来源包管理器管理着库,并提供读取和打包它们的工具。能构建更好应用的客户端包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。很棒的组件集合。隐秘地使用和用户数据。 转载来源:https://github.com/jobbole/aw... 包管理器管理着 javascript 库,并提供读取和打包它们的工具。•npm – npm 是 javasc...

    netmou 评论0 收藏0
  • javascript功能插件大集合 前端常用插件 js常用插件

    摘要:转载来源包管理器管理着库,并提供读取和打包它们的工具。能构建更好应用的客户端包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。很棒的组件集合。隐秘地使用和用户数据。 转载来源:https://github.com/jobbole/aw... 包管理器管理着 javascript 库,并提供读取和打包它们的工具。•npm – npm 是 javasc...

    Hydrogen 评论0 收藏0
  • EasyBridge:一种简单的js-bridge设计方案

    摘要:以这个工具库作为依赖,只需要编写实际通讯接口目前混合开发的方案包括就是一种简单的解决方案。基于接口粒度的安全控制策略每一个实例也都会持有一个的实例,用于针对具体的开发接口设置安全检查规则。 EasyBridge是一个简单易用的js-bridge的工具库,提供了日常开发中,JavaScript与Java之间通讯的能力,与其他常见的js-bridge工具库实现方案不同,EasyBridge...

    xcold 评论0 收藏0
  • JavaScript进阶学习(二)—— 基于原型链继承的js工具库的实现方法

    摘要:一些额外的全局函数命名空间对象接口和构造函数与没有典型的关联,但却是有效的。最后有几点需要说明的是每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。 文章来源:小青年原创发布时间:2016-07-03关键词:JavaScript,原型链,jQuery类库转载需标注本文原始地址: http://zhaomenghuan.githu...

    陈伟 评论0 收藏0

发表评论

0条评论

FrancisSoung

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<