JS开发中常用的小技巧

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS开发中常用的小技巧相关的知识,希望对你有一定的参考价值。

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
	}
}

以上是关于JS开发中常用的小技巧的主要内容,如果未能解决你的问题,请参考以下文章

Android 开发常用控件的小技巧

让你的JS更优雅的小技巧

前端开发中最常用的JS代码片段

Android课程---Android Studio使用小技巧:提取方法代码片段

总结下常用js中的小语法和技巧

关于js----------------分享前端开发常用代码片段