Js实用函数合集(一)

简介: Js实用函数合集

随机数生成器


Math.random()


转换为整数


parseInt()


日期时间函数(需要用变量调用):


var b = new Date(); //获取当前时间

b.getTime() //获取时间戳

b.getFullYear() //获取年份

b.getMonth()+1; //获取月份

b.getDate() //获取天

b.getHours() //获取小时

b.getMinutes() //获取分钟

b.getSeconds() //获取秒数

b.getDay() //获取星期几

b.getMilliseconds() //获取毫秒


数学函数(用Math来调用):


abs(x) 返回数的绝对值。

ceil(x) 对小数进行上舍入。

floor(x) 对数进行下舍入。

round(x) 把数四舍五入为最接近的整数。

max(x,y) 返回 x 和 y 中的最高值。

min(x,y) 返回 x 和 y 中的最低值。

pow(x,y) 返回 x 的 y 次幂。

sqrt(x) 返回数的平方根。

random() 返回 0 ~ 1 之间的随机数。 ****


字符串函数(用变量来调用):


indexOf


返回字符串中一个子串第一处出现的索引(从左到右搜索)。如果没有匹配项,返回 -1 。


var index1 = a.indexOf(“l”);

//index1 = 2


charAt


返回指定位置的字符。


var get_char = a.charAt(0);

//get_char = “h”

lastIndexOf


返回字符串中一个子串最后一处出现的索引(从右到左搜索),如果没有匹配项,返回 -1 。


var index1 = lastIndexOf(‘l’);

//index1 = 3


match


检查一个字符串匹配一个正则表达式内容,如果么有匹配返回 null。


var re = new RegExp(/^\w+$/);

var is_alpha1 = a.match(re);

//is_alpha1 = “hello”

var is_alpha2 = b.match(re);

//is_alpha2 = null


substring


返回字符串的一个子串,传入参数是起始位置和结束位置。


var sub_string2 = a.substring(1,4);

//sub_string2 = “ell”


substr


返回字符串的一个子串,传入参数是起始位置和长度


var sub_string1 = a.substr(1);

//sub_string1 = “ello”

var sub_string2 = a.substr(1,4);

//sub_string2 = “ello”


replace


替换字符串,第一个参数代表被替换的字符串,第二个参数代表替换的字符串

a.replace(“he”,“aa”)


search


执行一个正则表达式匹配查找。如果查找成功,返回字符串中匹配的索引值。否则返回 -1 。


var index1 = a.search(re);

//index1 = 0

var index2 = b.search(re);

//index2 = -1


split


通过将字符串划分成子串,将一个字符串做成一个字符串数组。


var arr1 = a.split("");

//arr1 = [h,e,l,l,o]


length


返回字符串的长度,所谓字符串的长度是指其包含的字符的个数。


toLowerCase


将整个字符串转成小写字母。


var lower_string = a.toLowerCase();

//lower_string = “hello”


toUpperCase


将整个字符串转成大写字母。


var upper_string = a.toUpperCase();

//upper_string = “HELLO”


1.Js天数相加获取新日期

 function timestampToTime(timestamp) {
        var date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
        var Y = date.getFullYear();
        var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1):date.getMonth()+1);
        var D = (date.getDate()< 10 ? '0'+date.getDate():date.getDate());
        return Y+"年"+M+"月"+D+"日";
    }


实用方法:


20210624161353422.png

20210624161403103.png


2.获取当前日期(yyyyMMdd格式)

function getNowFormatDate() {
        var date = new Date();
        var year = date.getFullYear();
        var month = date.getMonth() + 1;
        var strDate = date.getDate();
        if (month >= 1 && month <= 9) {
            month = "0" + month;
        }
        if (strDate >= 0 && strDate <= 9) {
            strDate = "0" + strDate;
        }
        var currentdate = year + "年" + month + "月" + strDate + "日";
        $("#time").html(currentdate)
        return currentdate;
    }

3.四舍五入

function toDecimal(x) {
        var f = parseFloat(x);
        if (isNaN(f)) {
            return;
        }
        f = Math.round(x*100)/100;
        return f;
    }

4.Js将数字转成中文大写数字

var digitUppercase = function(n) {
        var fraction = ['角', '分'];
        var digit = [
            '零', '壹', '贰', '叁', '肆',
            '伍', '陆', '柒', '捌', '玖'
        ];
        var unit = [
            ['元', '万', '亿'],
            ['', '拾', '佰', '仟']
        ];
        var head = n < 0 ? '欠' : '';
        n = Math.abs(n);
        var s = '';
        for (var i = 0; i < fraction.length; i++) {
            s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
        }
        s = s || '整';
        n = Math.floor(n);
        for (var i = 0; i < unit[0].length && n > 0; i++) {
            var p = '';
            for (var j = 0; j < unit[1].length && n > 0; j++) {
                p = digit[n % 10] + unit[1][j] + p;
                n = Math.floor(n / 10);
            }
            s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;
        }
        return head + s.replace(/(零.)*零元/, '元')
                .replace(/(零.)+/g, '零')
                .replace(/^整$/, '零元整');
    }

5.判断数据是否为空

function dataIsNotNull(data) {
        if (data != null && typeof(data) != "undefined" && data != "" && data != "''" && data != '') {
            return true;
        }
        else {
            return false;
        }
    }

6.字符串日期比较

 /* 比较俩个字符串时间A-B
 * A>B return 1
 * A<B return -1
 * A=B return 0
 */
$.compareTime = function(time1,time2) {
    if(new Date(time1.replace("-", "/").replace("-", "/")).getTime() > new Date(time2.replace("-", "/").replace("-", "/")).getTime()) {
        return 1;
    }else if(new Date(time1.replace("-", "/").replace("-", "/")).getTime() < new Date(time2.replace("-", "/").replace("-", "/")).getTime()) {
        return -1;
    }else if(new Date(time1.replace("-", "/").replace("-", "/")).getTime() == new Date(time2.replace("-", "/").replace("-", "/")).getTime()) {
        return 0;
    }else {
        return 2;
    }
};

7.验证邮件

function verifyEmailAddress(strEmail){
  var myReg = /^[_a-zA-Z0-9_-_._-]+@([_a-zA-Z0-9_-]+\.)+[a-zA-Z]{2,3}$/;
  return myReg.test(strEmail);
}

8.判断是否为日期数据

function itIsDate(DateString , Dilimeter) 
{ 
  if (DateString==null) return false; 
  if (Dilimeter=='' || Dilimeter==null) 
   Dilimeter = '-'; 
  var tempy=''; 
  var tempm=''; 
  var tempd=''; 
  var tempArray; 
  if (DateString.length<8 && DateString.length>10) 
    return false;    
  tempArray = DateString.split(Dilimeter); 
  if (tempArray.length!=3) 
   return false; 
  if (tempArray[0].length==4) 
  { 
   tempy = tempArray[0]; 
   tempd = tempArray[2]; 
  } 
  else 
  { 
   tempy = tempArray[2]; 
   tempd = tempArray[1]; 
  } 
  tempm = tempArray[1]; 
  var tDateString = tempy + '/'+tempm + '/'+tempd+' 8:0:0';//加八小时是因为我们处于东八区 
  var tempDate = new Date(tDateString); 
  if (isNaN(tempDate)) 
   return false; 
 if (((tempDate.getUTCFullYear()).toString()==tempy) && (tempDate.getMonth()==parseInt(tempm)-1) && (tempDate.getDate()==parseInt(tempd))) 
  { 
   return true; 
  } 
  else 
  { 
   return false; 
  } 
} 

9.复选框的全选与取消

function CheckAll(form){
  var length = form.itemId.length;
  var tocheck = form.chkall.checked;
  if (length)
    for (var i=0; i<length; i++){ 
      if (form.itemId[i].disabled != true){
        form.itemId[i].checked = tocheck;
      }       
    }
  else {
    if (form.itemId.disabled !=true){
      form.itemId.checked = tocheck;
    }
  }
}

10.数字输入控制

function InputIntNumberCheck(){
  //为支持IE 或 Netscape
  var theEvent=window.event || arguments.callee.caller.arguments[0]; 
  var elm ;
  var ver = navigator.appVersion;
  if (ver.indexOf("MSIE") != -1){  // IE
    if ( !((theEvent.keyCode >=48)&&(theEvent.keyCode<=57))){
      theEvent.keyCode=0;
    }
  }else{ // Netscape
    if ( !((theEvent.which >=48)&&(theEvent.which<=57))){
      theEvent.stopPropagation();
      theEvent.preventDefault();
    }
  }
  //
}
目录
相关文章
|
2月前
|
JavaScript 前端开发 Java
[JS]同事:这次就算了,下班回去赶紧补补内置函数,再犯肯定被主管骂
本文介绍了JavaScript中常用的函数和方法,包括通用函数、Global对象函数以及数组相关函数。详细列出了每个函数的参数、返回值及使用说明,并提供了示例代码。文章强调了函数的学习应结合源码和实践,适合JavaScript初学者和进阶开发者参考。
46 2
[JS]同事:这次就算了,下班回去赶紧补补内置函数,再犯肯定被主管骂
|
2月前
|
前端开发 JavaScript 开发者
除了 Generator 函数,还有哪些 JavaScript 异步编程解决方案?
【10月更文挑战第30天】开发者可以根据具体的项目情况选择合适的方式来处理异步操作,以实现高效、可读和易于维护的代码。
|
3月前
|
JavaScript 前端开发
JavaScript 函数语法
JavaScript 函数是使用 `function` 关键词定义的代码块,可在调用时执行特定任务。函数可以无参或带参,参数用于传递值并在函数内部使用。函数调用可在事件触发时进行,如用户点击按钮。JavaScript 对大小写敏感,函数名和关键词必须严格匹配。示例中展示了如何通过不同参数调用函数以生成不同的输出。
|
3月前
|
存储 JavaScript 前端开发
JS函数提升 变量提升
【10月更文挑战第6天】函数提升和变量提升是 JavaScript 语言的重要特性,但它们也可能带来一些困惑和潜在的问题。通过深入理解和掌握它们的原理和表现,开发者可以更好地编写和维护 JavaScript 代码,避免因不了解这些机制而导致的错误和不一致。同时,不断提高对执行上下文等相关概念的认识,将有助于提升对 JavaScript 语言的整体理解和运用能力。
|
4月前
|
JavaScript 前端开发 安全
JavaScript函数详解
JavaScript函数的详细解析,包括函数的定义和调用方式(如一般格式、匿名函数、构造函数、自调用函数、箭头函数和严格模式)、函数参数(arguments对象、可变参数、默认参数值)、闭包的概念和应用实例。
JavaScript函数详解
|
3月前
|
JavaScript 前端开发
js教程——函数
js教程——函数
56 4
|
3月前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
27 2
|
3月前
|
JavaScript 前端开发 Java
【javaScript数组,函数】的基础知识点
【javaScript数组,函数】的基础知识点
33 5
|
3月前
|
JavaScript 前端开发
Node.js 函数
10月更文挑战第5天
27 3
|
3月前
|
前端开发 JavaScript
探索JavaScript函数基础
探索JavaScript函数基础
25 3