javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > js去掉数组undefined及空字符串

js去掉数组中undefined及空字符串、null两种方法例子

作者:蓝胖子的多啦A梦

这篇文章主要给大家介绍了关于js去掉数组中undefined及空字符串、null的两种方法例子,文中还介绍了undefined与null之间的区别,通过代码介绍的非常详细,需要的朋友可以参考下

方法一、filter函数

	var arr = [原数组]
	var newArr = arr.filter(item => item && item.trim())
	console.log(newArr)

例子:

可以使用JavaScript的filter()函数来过滤掉数组中的undefined元素。

const arr = [1, undefined, 'hello', null, true];

const filteredArr = arr.filter(item => item !== undefined);

console.log(filteredArr); // [1, "hello", null, true]

方法二、遍历

	let arr=[原数组]
	let newArr= []
	// 方法1
	arr.forEach(item => {
	  if (item) {
	    newArr.push(item)
	  }
	})
	// 方法2
	for (let item of arr) {
	 if (item) {
	   newArr.push(item)
	 }
	}
	console.log(newArr)

附:undefined与null之间的区别

1、null和undefined的类型不同

console.log(typeof(undefined)); //undefined
console.log(typeof(null));    //object

null是一个具有有效不存在值的对象,并且它是不可变的,而undefined的对象类型是本身未定义的

此外任何具有null值的算术运算都将产生整数值,而任何带有undefined的算术运算都会导致变量值变为NaN

2、转换为原始类型的方式不同

null和undefined之间的主要区别在于它们被转换为原始类型的方式。在null上执行算术转换时,确定的值为0可以使用以下代码片段验证此转换。

var v1= 5+ null;
console.log(v1)

输出结果为5

但是undefined不执行任何此类转换,如果将undefined添加到数字中得出的结果将为NaN

var v2= 5+ undefined;
console.log(v2)

输出的结果为NaN

总结

到此这篇关于js去掉数组中undefined及空字符串、null两种方法的文章就介绍到这了,更多相关js去掉数组undefined及空字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文