常用原生js自定义函数总结


Posted in Javascript onNovember 20, 2016

js获取日期函数

//获取当前时间日期
function CurentTime()
{
  var now = new Date();
  var year = now.getFullYear();    //年
  var month = now.getMonth() + 1;   //月
  var day = now.getDate();      //日
  var hh = now.getHours();      //时
  var mm = now.getMinutes();     //分
  var clock = year + "-";

  if(month < 10)
    clock += "0";

  clock += month + "-";

  if(day < 10)
    clock += "0";

  clock += day + " ";

  if(hh < 10)
    clock += "0";

  clock += hh + ":";
  if (mm < 10) clock += '0';
  clock += mm;
  return(clock);
}

js获取时间差函数

//获取时间差多少天
function getLastTime()
  {
    var startTime=new Date("1996-5-11 00:00"); //开始时间
    var endTime=new Date();  //结束时间
    var lastTime=endTime.getTime()-startTime.getTime() //时间差的毫秒数

    //计算出相差天数
    var days=Math.floor(lastTime/(24*3600*1000))

    //计算出小时数
    var leave1=lastTime%(24*3600*1000)  //计算天数后剩余的毫秒数
    var hours=Math.floor(leave1/(3600*1000))
    //计算相差分钟数
    var leave2=leave1%(3600*1000)    //计算小时数后剩余的毫秒数
    var minutes=Math.floor(leave2/(60*1000))

    //计算相差秒数
    var leave3=leave2%(60*1000)   //计算分钟数后剩余的毫秒数
    var seconds=Math.round(leave3/1000)

    return " 相差 "+days+"天 "+hours+"小时 "+minutes+" 分钟"+seconds+" 秒";
  }

js只自动刷新页面一次

//自动刷新页面一次后停止刷新
window.onload = function(){
  if(location.search.indexOf("?")==-1){
   location.href += "?myurl";
  }
  else{
   if(location.search.indexOf("myurl")==-1) location.href += "&myurl";
  }
}

ajax实例

$.ajax({
    type: "POST",
    url: "join.php",
    data: dataString,
    success: function(){
      $('.success').fadeIn(200).show();
      $('.error').fadeOut(200).hide();
    }
  });

实时获取窗口大小

$(window).resize(function(){ 
  var Height = $(window).height();
  var Width = $(window).width();
})

js循环执行函数和定时执行函数

//循环执行,每隔3秒钟执行一次showalert() 
  window.setInterval(showalert, 3000);
  function showalert()
  {
    alert("循环执行");
  }
  //定时执行,5秒后执行show()
  window.setTimeout(show,5000);
   function show()
   {

    alert("定时执行");
   }

js获取get参数函数

function GetQueryString(name)
{
   var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
   var r = window.location.search.substr(1).match(reg);
   if(r!=null)return unescape(r[2]); return null;
}
alert(GetQueryString("参数名1"));

js页面打印数组函数

/**
  * 打印数组
  * @param {[type]} arr  要打印的数组
  * @param {[type]} space 控制打印的缩进
  * @param {[type]} space2 控制打印的缩进2
  */
  function print_arr(arr, space, space2)
  {

  space = space || ' ';

  space2 = space2 || '     ';

  var str = "Array<br>"+space+"(<br>";

  for(var i=0; i<arr.length; i++)

  {

   if( Object.prototype.toString.call(arr[i]) == '[object Array]' )

   { //判断是否是数组,如果是,进行递归拼接

    str += space2 + '[' +i+"] => "+ print_arr(arr[i], space+'   ', space2+'   ');

   }

   else

   {

    str += space2 +'['+i+"] => "+ arr[i] +"<br>";

   }

  }

  str += space+")<br>";

  document.write(str);

 }

js打印json数据成数组形式输出在html

/** 输出空格函数 */
function blank(num) {
 var res = '';
 for (var i = 0; i < num; i++) {
  res += ' ';
 }
 return res;
}  

/** 计算JSON对象数据个数 */
function jsonLen(jsonObj) {
 var length = 0;
 for (var item in jsonObj) {
    length++;
 }
 return length;
}

/** 解析JSON对象函数 */
function printObj(obj) {
 // JSON对象层级深度
 deep = (typeof(deep)=='undefined') ? 0: deep;
 var html = "Array\n"; // 返回的HTML
 html += kong(deep) + "(\n";
 var i = 0; 
 // JSON对象,不能使用.length获取数据的个数,故需自定义一个计算函数
 var len = typeof(obj) == 'array' ? obj.length : jsonLen(obj);
 for(var key in obj){
  // 判断数据类型,如果是数组或对象,则进行递归
  // 判断object类型时,&&jsonLen(obj[key])是由于
  // 1、值(类似:email:)为null的时候,typeof(obj[key])会把这个key当做object类型
  // 2、值为null的来源是,数据库表中某些字段没有数据,查询之后直接转为JSON返回过来
  if(typeof(obj[key])=='array'|| (typeof(obj[key])=='object' && jsonLen(obj[key]) > 0) ){
   deep += 3;
   html += kong(deep) + '[' + key + '] => ';
   // 递归调用本函数
   html += printObj(obj[key],deep);
   deep -= 3;
  }else{
   html += kong(deep + 3) + '[' + key + '] => ' + obj[key] + '\n';
  }
  if (i == len -1) {
   html += kong(deep) + ")\n";
  };
  i++;
 }
 return html;
}

/** 向HTML页面追加打印JSON数据 */
function p_Obj(obj) {
 var div = document.getElementById('print-json-html');
 if (div != null) {
  document.body.removeChild(div);
 };
 var node = document.createElement("div");//创建一个div标签 
 node.id = 'print-json-html';
 node.innerHTML = '<pre>' + printObj(obj) + '</pre>';
 document.body.appendChild(node);
}

js打印多维数组的数组长度函数

//获取多维数组的数量
  function getArrNum(arr) {

    var eleNum = 0;

    if (arr == null) {

      return 0;

    }

    for (var i = 0; i < arr.length; i++) {

      for (var j = 0; j < arr[i].length; j++) {

        eleNum++;

      }

    }

    document.write(eleNum);

  }

以上这篇常用原生js自定义函数总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery代码优化 遍历篇
Nov 01 Javascript
javascript实现状态栏文字首尾相接循环滚动的方法
Jul 22 Javascript
jquery采用oop模式class类的使用示例
Jan 22 Javascript
如何使用jquery修改css中带有!important的样式属性
Apr 28 Javascript
浅析BootStrap中Modal(模态框)使用心得
Dec 24 Javascript
jquery实现图片放大点击切换
Jun 06 jQuery
angular4自定义组件详解
Sep 28 Javascript
layer弹出层自适应高度,垂直水平居中的实现
Sep 16 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
Sep 24 Javascript
Javascript模拟实现new原理解析
Mar 03 Javascript
VueCli4项目配置反向代理proxy的方法步骤
May 17 Javascript
js实现车辆管理系统
Aug 26 Javascript
浅谈js之字面量、对象字面量的访问、关键字in的用法
Nov 20 #Javascript
浅谈jquery选择器 :first与:first-child的区别
Nov 20 #Javascript
关于js函数解释(包括内嵌,对象等)
Nov 20 #Javascript
浅谈js函数中的实例对象、类对象、局部变量(局部函数)
Nov 20 #Javascript
解决前端跨域问题方案汇总
Nov 20 #Javascript
jQuery 的 ready()的纯js替代方法
Nov 20 #Javascript
node+experss实现爬取电影天堂爬虫
Nov 20 #Javascript
You might like
风格模板初级不完全修改教程
2006/10/09 PHP
社区(php&amp;&amp;mysql)五
2006/10/09 PHP
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
2007/02/15 PHP
php定时计划任务的实现方法详解
2013/06/06 PHP
extjs之去除s.gif的影响
2010/12/25 Javascript
jQuery旋转插件—rotate支持(ie/Firefox/SafariOpera/Chrome)
2013/01/16 Javascript
jquery淡化版banner异步图片文字效果切换图片特效
2014/04/08 Javascript
js实现点击链接后延迟3秒再跳转的方法
2015/06/05 Javascript
分享几种比较简单实用的JavaScript tabel切换
2015/12/31 Javascript
JS实现图片高斯模糊切换效果的焦点图实例
2017/01/21 Javascript
vue2.0实战之基础入门(1)
2017/03/27 Javascript
利用node.js如何创建子进程详解
2017/12/09 Javascript
vue axios登录请求拦截器
2018/04/02 Javascript
jquery ajaxfileuplod 上传文件 essyui laoding 效果【防止重复上传文件】
2018/05/26 jQuery
详解angular脏检查原理及伪代码实现
2018/06/08 Javascript
原生JS实现前端本地文件上传
2018/09/08 Javascript
JavaScript中EventBus实现对象之间通信
2020/10/18 Javascript
[01:05:29]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第二场 1月24日
2021/03/11 DOTA
python实现电子词典
2020/04/23 Python
安装dbus-python的简要教程
2015/05/05 Python
Python面向对象编程基础解析(二)
2017/10/26 Python
pandas.loc 选取指定列进行操作的实例
2018/05/18 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
python NumPy ndarray二维数组 按照行列求平均实例
2019/11/26 Python
python实现五子棋程序
2020/04/24 Python
小米旗下精品生活电商平台:小米有品
2018/12/18 全球购物
澳大利亚领先的亚麻品牌:Bed Threads
2019/12/16 全球购物
研究生自我鉴定范文
2013/10/30 职场文书
艺术节主持词
2014/04/02 职场文书
自愿离婚协议书2015
2015/01/26 职场文书
给老婆的检讨书
2015/01/27 职场文书
银行自荐信范文
2015/03/25 职场文书
2015年信访工作总结
2015/04/07 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
TV动画《八十龟酱观察日记》第四季宣传PV公布
2022/04/06 日漫
winserver2019安装软件一直卡在应用程序正在为首次使用做准备
2022/06/10 Servers