js去掉數(shù)組中undefined及空字符串、null兩種方法例子
方法一、filter函數(shù)
var arr = [原數(shù)組] var newArr = arr.filter(item => item && item.trim()) console.log(newArr)
例子:
可以使用JavaScript的filter()函數(shù)
來(lái)過(guò)濾掉數(shù)組中的undefined元素。
const arr = [1, undefined, 'hello', null, true]; const filteredArr = arr.filter(item => item !== undefined); console.log(filteredArr); // [1, "hello", null, true]
方法二、遍歷
let arr=[原數(shù)組] 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之間的區(qū)別
1、null和undefined的類型不同
console.log(typeof(undefined)); //undefined console.log(typeof(null)); //object
null是一個(gè)具有有效不存在值的對(duì)象,并且它是不可變的,而undefined的對(duì)象類型是本身未定義的
此外任何具有null值的算術(shù)運(yùn)算都將產(chǎn)生整數(shù)值,而任何帶有undefined的算術(shù)運(yùn)算都會(huì)導(dǎo)致變量值變?yōu)镹aN
2、轉(zhuǎn)換為原始類型的方式不同
null和undefined之間的主要區(qū)別在于它們被轉(zhuǎn)換為原始類型的方式。在null上執(zhí)行算術(shù)轉(zhuǎn)換時(shí),確定的值為0可以使用以下代碼片段驗(yàn)證此轉(zhuǎn)換。
var v1= 5+ null; console.log(v1)
輸出結(jié)果為5
但是undefined不執(zhí)行任何此類轉(zhuǎn)換,如果將undefined添加到數(shù)字中得出的結(jié)果將為NaN
var v2= 5+ undefined; console.log(v2)
輸出的結(jié)果為NaN
總結(jié)
到此這篇關(guān)于js去掉數(shù)組中undefined及空字符串、null兩種方法的文章就介紹到這了,更多相關(guān)js去掉數(shù)組undefined及空字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript返回上一頁(yè)的三種方法及區(qū)別介紹
這篇文章主要介紹了JavaScript返回上一頁(yè)的三種方法及區(qū)別介紹,本文直接給出示例代碼,需要的朋友可以參考下2015-07-07js使用DOM操作實(shí)現(xiàn)簡(jiǎn)單留言板的方法
這篇文章主要介紹了js使用DOM操作實(shí)現(xiàn)簡(jiǎn)單留言板的方法,涉及javascript中DOM操作的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04JavaScript數(shù)組去重的幾種方法效率測(cè)試
JavaScript數(shù)組去重是前端面試酷愛(ài)的問(wèn)題,問(wèn)題簡(jiǎn)單而又能看出程序員對(duì)計(jì)算機(jī)程序執(zhí)行過(guò)程的理解如何。數(shù)組去重的方法有很多,到底哪種是最理想的我不清楚。于是我測(cè)試了下數(shù)組去重的效率。測(cè)試二十萬(wàn)個(gè)數(shù)據(jù),隨著數(shù)據(jù)越多效率很明顯的就體驗(yàn)了出來(lái)。下面來(lái)一起看看吧。2016-10-10JS 組件系列之BootstrapTable的treegrid功能
這篇文章主要介紹了JS 組件系列之BootstrapTable的treegrid功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-06-06JavaScript中防抖和節(jié)流的實(shí)戰(zhàn)應(yīng)用記錄
防抖與節(jié)流都是用來(lái)限制用戶頻發(fā)觸發(fā)事件的機(jī)制,下面這篇文章主要給大家介紹了關(guān)于JavaScript中防抖和節(jié)流的實(shí)戰(zhàn)應(yīng)用,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04js 禁用只讀文本框獲得焦點(diǎn)時(shí)的退格鍵
發(fā)現(xiàn)只讀文本框有一個(gè)缺陷,當(dāng)鼠標(biāo)焦點(diǎn)在文本框里面的時(shí)候按回退鍵(backSpace), 會(huì)退回到前一個(gè)頁(yè)面2010-04-04