js笔记

1.克隆对象

克隆数组:

var country=['中国','美国'];
var copyCountry=country.slice(0);

克隆对象:

var people={sex:'man',age:4};
var me=JSON.parse(JSON.stringify(people));

2.随机数

从数组中随机取n个不重复的元素

 function getRandomArrayElements(arr, count) {
        var shuffled = arr.slice(0), i = arr.length, min = i - count, temp, index;
        while (i-- > min) {
            index = Math.floor((i + 1) * Math.random());
            temp = shuffled[index];
            shuffled[index] = shuffled[i];
            shuffled[i] = temp;
        }
        return shuffled.slice(min);
    }

 3.回车代替点击

    <button id="btnStart">开始</button>
<script>
    $(function () {     
        $("body").keypress(function (e) {      
            if (e.which == 13)
            {
                $("#btnStart").focus().click();
            }
        });

        $("#btnStart").click(function () {
            alert("我被点击了");
        });
    });

 4.数组倒序

var a, l;  
a = new Array(0,1,2,3,4);  
l = a.reverse();

5.获取客户端时间标准格式

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 ss = now.getSeconds();           //秒
       
        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+":"; 
        
        if(ss<10) clock+='0';
        clock+=ss;
        
        return(clock); 
    } 

格式为:yyyy-MM-dd HH:mm:ss

6.获取Url参数

function tb_parseQuery(query) { var Params = {}; if (!query) { return Params; }// return empty object var Pairs = query.split(/[;&]/); for (var i = 0; i < Pairs.length; i++) { var KeyVal = Pairs[i].split('='); if (!KeyVal || KeyVal.length != 2) { continue; } var key = unescape(KeyVal[0]); var val = unescape(KeyVal[1]); val = val.replace(/\+/g, ' '); Params[key] = val; } return Params; }

var getJsonObj = tb_parseQuery(location.href);

getJsonObj.out_trade_no

 7.将数字类型保留2位小数

function changeTwoDecimal_f(x) { 
var f_x = parseFloat(x); 
if (isNaN(f_x)) { 
alert('function:changeTwoDecimal->parameter error'); 
return false; 
} 
f_x = Math.round(f_x * 100) / 100; 
var s_x = f_x.toString(); 
var pos_decimal = s_x.indexOf('.'); 
if (pos_decimal < 0) { 
pos_decimal = s_x.length; 
s_x += '.'; 
} 
while (s_x.length <= pos_decimal + 2) { 
s_x += '0'; 
} 
return s_x; 
} 

 8.数组去除重复

var unique = function(arr) {
var result = [], json = {};
for (var i = 0, len = arr.length; i < len; i++){
if (!json[arr[i]]) {
json[arr[i]] = 1;
result.push(arr[i]); //返回没被删除的元素
}
}
return result;
};

 9.字符串按照字符拆分放进数组

var a=Array.prototype.join.call('hello', '-');
var b=a.split("-")

 10.从一个数组里面随机取N个元素

  ///从一个数组中随机取n个元素
    function getRandomArrayElements(arr, count) {
        var shuffled = arr.slice(0), i = arr.length, min = i - count, temp, index;
        while (i-- > min) {
            index = Math.floor((i + 1) * Math.random());
            temp = shuffled[index];
            shuffled[index] = shuffled[i];
            shuffled[i] = temp;
        }
        return shuffled.slice(min);
    }

 11.将一个数组随机排序

 function arrayRandom() {
                array = array.length ? array : array1;
                var l = array.length;
                array1 = [];
                while (l) {
                    var rd = parseInt(Math.random() * l);
                    temp = array[rd];
                    array[rd] = array[l - 1];
                    array[l - 1] = temp;
                    array1.push(temp);
                    array.pop();
                    l -= 1;
                }
                array = array1;
            }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Html5上传插件封装

          前段时间将flash的上传控件替换成使用纯js实现的,在此记录 1.创建标签 <div class="camera-area" style="dis...

    用户1055830
  • HttpContext.Cache属性

          HttpContext基于HttpApplication的处理管道,由于HttpContext对象贯穿整个处理过程,所以,可以从HttpApplic...

    用户1055830
  • BootStrap学习------栅格

        使用Bootstrap前端框架-栅格 要点 1.使用Bootstrap需要引入的css和js:     (1)bootstrap.min.js     ...

    用户1055830
  • 《JavaScript程序设计》第2课:JS类型系统

    JS类型系统可以分为标准类型和对象类型,进一步标准类型又可以分为原始类型和引用类型,而对象类型又可以分为内置对象类型、普通对象类型、自定义对象类型。 ? 1. ...

    陈树义
  • Javascript[0x06] -- 基于Javascript范畴代码风格和规范的总结

    抓重点: 这么多要看到猴年马月去,找一个对的上眼的深入学习下,切勿都学,没这个必要,粗略扫读,有针对性阅读!

    丰臣正一
  • Python中的整除

    py3study
  • javascript基础知识点1.0

    知识点综述: ---- 在复习JavaScript语法,主要看的是w3cschool的教程。 用法: 1.0必须位于<script></s...

    东风冷雪
  • 【H5游戏实例】JS+canvas实现人机大战之五子棋

    html代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> ...

    李海彬
  • 八、通过断点调试观察JS执行过程

    利用chrome开发者工具中的断点调试,我们能够一步步观察JavaScript的执行过程,直观感知函数调用栈、作用域链、变量对象、闭包、this等关键信息的变化...

    用户6901603
  • 常用的js时间函数 原

    lilugirl

扫码关注云+社区

领取腾讯云代金券