美文网首页
几个js开发过程中的小技巧

几个js开发过程中的小技巧

作者: 花不知Cookie | 来源:发表于2016-10-28 13:18 被阅读0次

前言

javascript是一门非常灵活的语言,实际的开发过程中我们也可以灵活的使用它而给我们的工作带来便利,这篇文章记录了自己平时学习过程中经常用到的一些小技巧,整理出来作为笔记,也希望对感兴趣的同学有所帮助。( 持续更新… )

1.获取指定范围内的随机数

当我们需要获取指定范围(min,max)内的整数的时候,下面的代码非常适合。

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到指定值的数字数组

var arr=[],length=100,i=1;
for(;arr.push(i++)<length;){}
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 _slice=[].slice;
var objArr=_slice.call(obj);
测试 测试测试

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.不要直接使用delete来删除数组中的元素

数组在js中也是对象,有时候我们可能会通过delete来删除数组中的元素,但是其实仅仅是将数组的元素的值赋值为了undefined。

var arr=[1,2,3,4,5,'谦龙','雏田'];
delete arr[5];
console.log(arr,arr[5],arr.length);
测试

测试测试
可以通过splice来删除数组中的某一项
var arr=[1,2,3,4,5,'谦龙','雏田'];
arr.splice(5,1);
console.log(arr,arr[5],arr.length);
测试

测试测试

11.生成指定长度的随机字母数字字符串

function getRandomStr(len) {
var str = "";
for( ; str.length < len; str += Math.random().toString(36).substr(2));
return str.substr(0, len);
}
测试

测试测试

12.null 与 undefined

null == undefined,null == null 返回true,有时候我们为了排除null 和 undefined可以使用如下的代码

function test(obj){
if(obj!=null){// obj除了undefined 和 null 之外都会走这里
....这里写代码逻辑
}
}

13.找出数组中出现次数最的元素,并给出其出现过的位置

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
}
}
测试结果

转载自https://qianlongo.github.io/

相关文章

  • 几个js开发过程中的小技巧

    前言 javascript是一门非常灵活的语言,实际的开发过程中我们也可以灵活的使用它而给我们的工作带来便利,这篇...

  • js开发小技巧

    ··1 :页面跳转三剑客: location.assign("http://www.baidu.com"); wi...

  • js开发小技巧

    双感叹号判断布尔值 var a;!!a;// => false 判断对象是否为空 function isEmpty...

  • iOS开发的几个小技巧

    第一次写,想给大家分享几个iOS项目中可能会使用到的小技巧 1、如何在app中打开设置中的app设置界面 网上有很...

  • Android开发的几个小技巧

    1.使用Handler在子线程更新UI:有一部分刚入门的童鞋会认为handler的post(Runnable r)...

  • 【基础系列】JS使用技巧专题

    JS使用技巧专题 1开发技巧 1.1函数使用 1.1.1函数声明方式 JS函数的写法总结 http://blog....

  • 快捷路径

    前端开发小技巧(Vue、JS、CSS):https://www.jianshu.com/p/f2a934d48a6...

  • js的几个小技巧和陷阱

    这里有一些 JavaScript 初学者应该知道的技巧和陷阱,如果你已经是专家了,顺便可以温习一下 1.你有没有尝...

  • JS开发必须知道的41个技巧

    JS开发必须知道的41个技巧 前言 JS是前端的核心,但有些使用技巧你还不一定知道;本文梳理了JS的41个技巧,帮...

  • 小程序开发

    原文 小程序 小程序文档 我会加入一些 小程序文档没有提到的问题和开发的技巧。 project.config.js...

网友评论

      本文标题:几个js开发过程中的小技巧

      本文链接:https://www.haomeiwen.com/subject/neosuttx.html