字符串方法,日期及选择排序

一、字符串方法

  • 截取字符串。

     substr(开始下标,截取长度)    
     
     substring(开始下标,结束下标) 
     
     slice(开始下标,结束下标)
    
var str  = 'aghjkl;tyuiovbnmvbuytdfghjklk';
console.log(str.substr(2,3));//  'hjk'
console.log(str.substring(2,12));  'hjkl;tyuio'
console.log(str.slice(2,12));  'hjkl;tyuio'
  • indexOf() :

查找字符串首次出现时的索引位置。

var str  = 'aghjkl;tyuiovbnmvbuytdfghjklk';
console.log(str.indexOf('h')); //2

  • trim()

去除前后空格。

var str  = '   aghjkl;tyuiovbnmvbuytdfghjklk   ';
console.log(str.trim()); // 'aghjkl;tyuiovbnmvbuytdfghjklk'
  • toLowerCase()

转小写。

var str  = 'NKLM';
console.log(str.toLowerCase()); // 'nklm'   
  • toUpperCase()

转大写。

var str  = 'npli';
console.log(str.toUpperCase()); // 'NPLI' 

二、Math方法

  • Math.random()

生成随机数。

var num = parseInt(Math.random()*(最大值-最小值+1)+最小值);
console.log(Math.random());// [0,1) 包括0不包括1
  • Math.abs(num)

获取绝对值。

var num = -1;
console.log(Math.abs(num));  // 1
  • Math.round(num)

四舍五入。

var num = 10.2;
console.log(Math.round(num)); // 四舍五入 10
  • Math.ceil(num)

向上取整。

var num  = 10.8;
console.log(Math.ceil(num)); // 11
  • Math.floor(num)

向下取整。

var num  = 10.8;
console.log(Math.floor(num)); // 10
  • Math.pow(a,b)

计算a的b次方。

var num = 10;
console.log(Math.pow(10,2)); // 10的2次方 100      
  • Math.sqrt(num)

取根号。

var num = 9;
console.log(Math.sqrt(num)); // 取根号   3
  • Math.max(num1,num2,num3…);

取最大值。

console.log(Math.max(12,45,6)); // 45
  • Math.min(num1,num2,num3…)

取最小值。

 console.log(Math.min(12,45,6)); // 6

三、日期对象

1、创建对象

var date = new Date();  //创建当前本地日期对象
var date = new Date('2020-09-09 10:00:00');  //创建指定的日期对象

2、对象的方法

  • toLocaleString()

将本地日期转为字符串形式。

var date = new Date();
console.log(date.toLocaleString()); // 转为字符串形式表示
  • getTime()

获取距离1970年1月1日 的毫秒值。

var date = new Date(); // 当前本地时间
var date1 = new Date('2021-05-17 11:00:00');
//获取本地日期和指定日期相差的毫秒值
var  cha = date.getTime() - date1.getTime();// 毫秒值
  • 获取年,月,日,时,分,秒
var date = new Date();
     
console.log(date.getFullYear()); // 获取年份
console.log(date.getMonth() + 1); // 获取月份 [0-11]
console.log(date.getDate()); // 获取日
console.log(date.getHours()); // 获取小时
console.log(date.getMinutes()); // 获取分钟
console.log(date.getSeconds()); // 获取秒
  • 获取星期。
console.log(date.getDay()); // 0-6    0:星期日
  • 经典案例
//获取本地时间,并按照一定格式输出
function getDate(){
    //获取年月日 小时分钟秒 再拼接
    var date = new Date();
    // console.log(date);

    var y = date.getFullYear();
    var M = date.getMonth()+1; //默认0-11
    var d = date.getDate();

    var h = date.getHours();
    var m = date.getMinutes();
    var s = date.getSeconds();

    h = h<10?'0'+h:h;
    m = m<10?'0'+m:m;
    s = s<10?'0'+s:s;

    return y+'年'+M+'月'+d+'日'+"  "+h+':'+m+':'+s;
}

console.log(getDate());
// 倒计时
function getCha(){
        //倒计时
         var date1 = new Date();
         //获取本地时间
         var date2 = new Date('2021-6-18 00:00:00');
         //指定时间对象
         var cha = date2.getTime() - date1.getTime();
         //计算两个时间差 单位是毫秒

        if(cha>0){
            //时间差大于0
            var s = parseInt(cha/1000%60);
            var m = parseInt(cha/1000/60%60);
            var h = parseInt(cha/1000/60/60%24);//若小时数>24,为一天

            s = s<10?'0'+s:s;
            m = m<10?'0'+m:m;
            h = h<10?'0'+h:h;
           
        }else{
            //时间到了
            clearInterval(timer);
            alert('时间到!')
        }
        
        return '距离618节还剩'+'<span>'+h+'</span>'+'小时'+'<span>'+m+'</span>'+'分钟'+'<span>'+s+'</span>'+'秒!';
    }

    var timer = setInterval(function(){
        var oDiv = document.getElementById('div');
        //把函数返回值打印在div中  每1s一次
        oDiv.innerHTML = getCha()
    },1000)

四、选择排序

  • 原理

拿第一个元素和后面的所有元素进行比对,将最小值放在最前面。

  • 定义数组
var arr = [24, 89, 12, 68];
// 第一轮
        if (arr[0] > arr[1]) {
            var temp = arr[0];
            arr[0] = arr[1];
            arr[1] = temp;
        }
        if (arr[0] > arr[2]) {
            var temp = arr[0];
            arr[0] = arr[2];
            arr[2] = temp;
        }
        if (arr[0] > arr[3]) {
            var temp = arr[0];
            arr[0] = arr[3];
            arr[3] = temp;
        }
// 第二轮
        if (arr[1] > arr[2]) {
            var temp = arr[2];
            arr[2] = arr[1];
            arr[1] = temp;
        }
        if (arr[1] > arr[3]) {
            var temp = arr[3];
            arr[3] = arr[1];
            arr[1] = temp;
        }
// 第三轮
        if (arr[2] > arr[3]) {
            var temp = arr[3];
            arr[3] = arr[2];
            arr[2] = temp;
        }
//使用for循环
for (var i = 0; i < arr.length - 1; i++) {
       for (var j = i + 1; j < arr.length; j++) {
              if (arr[i] > arr[j]) {
                  var temp = arr[i];
                  arr[i] = arr[j];
                  arr[j] = temp;
               }
        }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值