常用原生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 相关文章推荐
用js实现预览待上传的本地图片
Mar 15 Javascript
JavaScript Timer实现代码
Feb 17 Javascript
详解强大的jQuery选择器之基本选择器、层次选择器
Feb 07 Javascript
jquery 动态创建元素的方式介绍及应用
Apr 21 Javascript
JQUERY对单选框(radio)操作的小例子
Apr 25 Javascript
jquery中JSON的解析方式
Mar 16 Javascript
详解jquery validate实现表单验证 (正则表达式)
Jan 18 Javascript
如何正确理解javascript的模块化
Mar 02 Javascript
javascript 的变量、作用域和内存问题
Apr 19 Javascript
vue2.0 中使用transition实现动画效果使用心得
Aug 13 Javascript
JavaScript生成随机验证码代码实例
Sep 28 Javascript
解决vue 使用setTimeout,离开当前路由setTimeout未销毁的问题
Jul 21 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
一个显示效果非常不错的PHP错误、异常处理类
2014/03/21 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
学习php开源项目的源码指南
2014/12/21 PHP
php数组去除空值函数分享
2015/02/02 PHP
Laravel框架实现model层的增删改查(CURD)操作示例
2018/05/12 PHP
解决windows上php xdebug 无法调试的问题
2020/02/19 PHP
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
JQuery实现简单时尚快捷的气泡提示插件
2012/12/20 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
可插入图片的TEXT文本框
2013/12/27 Javascript
js的隐含参数(arguments,callee,caller)使用方法
2014/01/28 Javascript
js unicode 编码解析关于数据转换为中文的两种方法
2014/04/21 Javascript
微信小程序文字显示换行问题
2019/07/28 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题
2020/07/28 Javascript
vant自定义二级菜单操作
2020/11/02 Javascript
[04:56]经典回顾:前Ehome 与 前LGD
2015/02/26 DOTA
python 常见字符串与函数的用法详解
2018/11/23 Python
Python实现变声器功能(萝莉音御姐音)
2019/12/05 Python
python安装后的目录在哪里
2020/06/21 Python
HTML5验证以及日期显示的实现详解
2013/07/05 HTML / CSS
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
加拿大廉价机票预订网站:CheapOair.ca
2018/03/04 全球购物
ParcelABC西班牙:包裹运送和快递服务
2019/12/24 全球购物
Simons官方网站:加拿大时尚零售商
2020/02/20 全球购物
大学生实习思想汇报
2014/01/12 职场文书
七年级历史教学反思
2014/02/05 职场文书
二年级小学生评语
2014/04/21 职场文书
城市创卫标语
2014/06/17 职场文书
部门活动策划方案
2014/08/16 职场文书
群教班子对照检查材料
2014/08/26 职场文书
地震捐款倡议书
2014/08/29 职场文书
2014年学校国庆主题活动方案
2014/09/16 职场文书
教育合作协议范本
2014/10/17 职场文书
2016年基层党支部书记公开承诺书
2016/03/25 职场文书
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android