//1、获取指定范围内的随机数
function getRadomNum(min,max){
    return  Math.floor(Math.random() * (max - min + 1)) + min;
}
//2、随机获取数组中的元素
function getRadomFromArr(arr){
    return arr[Math.floor(Math.random()*arr.length)];
}
//3、生成从0到指定值的数字数组
function getArray(len) {
    var arr = [],i = 1;
    for (; arr.push(i++) < len;);
    console.log(arr)
}
//等同于:
function getArray(len) {
    var arr = [],i = 1;
    for (; i < len; i++) {
        arr.push(i)
    }
    console.log(arr)
}
//4、打乱数字数组的顺序
var arr = [1, 2, 3, 4, 5, 6, 7, 'a', 'dsfs', 8, 9, 'v'];
arr.sort(function() {
    return Math.random() - 0.5
});
//5、对象转换为数组
//注意对象必须是以下格式的才可以通过此方式转化为数组
//获取的DOM集合,以及函数的arguments也可以通过此方式转化为数组
var obj = {
    0: 'qian',
    1: 'long',
    2: 'chu',
    3: 'tian',
    length: 4

}
var objArr = Array.prototype.slice.call(obj);
// var objArr = [].slice.call(obj);
// var objArr = Array.prototype.slice.apply(obj);
console.log(objArr)
//6、验证是否为数组
function isArray(obj) {
    return Object.prototype.toString.call(obj) === '[object Array]';
}
//7、获取数组中最大或者最小值
function maxAndMin(arr){
    return {
       max:Math.max.apply(null,arr.join(',').split(',')),
       min:Math.min.apply(null,arr.join(',').split(','))
    }
}
//8、清空数组
//方式一 通过将长度设置为0
var arr = [1, 2, 3, 4, 5];
arr.length = 0;

//方式二 通过splice方法
var arr = [1, 2, 3, 4, 5];
arr.splice(0, arr.length);

//方式三 通过将空数组 [] 赋值给数组(严格意义来说这只是将ary重新赋值为空数组,之前的数组如果没有引用在指向它将等待垃圾回收。)
var arr = [1, 2, 3, 4, 5];
arr = [];
//9、保留指定小数位
var num =4.345678;
num = num.toFixed(4);  // 4.3457 第四位小数位以四舍五入计算
//10、生成指定长度的随机字母数字字符串
// 生成指定长度的随机字母数字字符串
/*写法一
function getRandomStr(len) {
    var str = "";
    for (; str.length < len; str += Math.random().toString(36).substr(2));
    return str.substr(0, len);
}
//写法二
function getRandomStr(len) {
    var str = "";
    for (; str.length < len;) {
        str += Math.random().toString(36).substr(2);
    }
    return str.substr(0, len);
}*/
/*写法三*/
function getRandomStr(len) {
    for (var str = ''; str.length < len; str += Math.random().toString(36).substr(2));
    return str.substr(0, len)
}
//11、找出数组中出现次数最的元素,并给出其出现过的位置
function getMaxAndIndex(arr) {
    var obj = {};
    arr.forEach(function(item, index) {
        if (!obj[item]) {
            obj[item] = {
                indexs: [index]
            }
        } else {
            obj[item]['indexs'].push(index);
        }
    });
    var num = 0; //记录出现次数最大值
    var str = ''; //记录出现次数最多的字符
    var reArr; //返回最大值的位置数组
    for (var attr in obj) {
        var temp = obj[attr]['indexs'];
        if (temp.length > num) {
            num = temp.length;
            str = attr;
            reArr = temp;
        }
    }
    return {
        maxStr: str,
        indexs: reArr
    }
}

最新文章

  1. iOS之两个ImageView实现图片滚动
  2. biweb添加新的模块
  3. 移植SlidingMenu Android library,和安装example出现的问题解决
  4. Log4cpp配置文件格式说明
  5. 分享总结:更好地CodeReview
  6. 简单的flash策略文件服务器!
  7. BNUOJ 26579 Andrew the Ant
  8. [编织消息框架][netty源码分析]4 eventLoop 实现类NioEventLoop职责与实现
  9. 【c#】RabbitMQ学习文档(二)Work Queues(工作队列)
  10. ORM创建多表以及多表的增删改查
  11. mysql5.6安装优化实例
  12. 康拓展开-排列的hash
  13. requireJS2
  14. 域对象 request
  15. 02 - Unit07:显示笔记下拉菜单、笔记的分享功能、笔记的删除功能
  16. jetty之嵌入式开发
  17. JS原生带小白点轮播图
  18. jQuery调用ajax获取json格式数据
  19. Linux 安装elasticsearch、node.js、elasticsearch-head
  20. c# 对List&lt;T&gt; 某字段排序,取TOP条数据

热门文章

  1. iOS网络缓存机制
  2. caffe(14) python可视化
  3. input的选中与否以及将input的value追加到一个数组里
  4. NodeJS学习笔记 (31)定时器-timers
  5. maven+spring-data-jpa环境搭建
  6. 移动端 Modal 组件开发杂谈
  7. 关于memset赋最值
  8. js或css指定元素点击时内容不可被选中
  9. 欢迎各位技术牛人增加Swift QQ群:343549891
  10. DispatcherServlet 前置控制器