常用原生js自定义函数

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 || '&nbsp;';

    space2 = space2 || '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';

    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);

    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

任聪聪

创作不易,你的打赏是我的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值