欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中清空數(shù)組的幾種方法

 更新時間:2023年02月17日 09:31:03   作者:癡心阿文  
本文主要介紹了JavaScript中清空數(shù)組的幾種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Array.prototype.splice()

let course = ['HTML', 'CSS', 'JavaScript']
 
course.splice(0)
console.log(course.length) // 0

注意:此方法會影響其他引用。 

let course = ['HTML', 'CSS', 'JavaScript']
let other = course
 
course.splice(0)
course // []
other // []

由于 splice() 返回一個已刪除項目的數(shù)組,您可以通過將結(jié)果分配給一個新變量來獲取原始數(shù)組的副本:

let foo = ['hello', 'world']
 
// 清空并創(chuàng)建一個 foo 的副本
let bar = foo.splice(0, foo.length)
 
console.log(foo) // []
console.log(bar) // ['hello', 'world']

將 length 設(shè)置為 0

將數(shù)組的長度設(shè)置為零。 

let course = ['HTML', 'CSS', 'JavaScript']
course.length = 0
console.log(course) // []

分配新的空數(shù)組

let course = ['HTML', 'CSS', 'JavaScript']
course = []
console.log(course.length) // 0

length = 0和 Array = [] 之間的差異?

在大多數(shù)情況下,將變量重新分配給空數(shù)組是更好的選擇。它比調(diào)整 length 屬性更短、更明確。

但有時,你有一個數(shù)組是通過引用分配的,你想讓它們保持引用。

假如我們有一個 foo 數(shù)組,我們還有一個 bar 變量,我將它的值設(shè)置為 foo 數(shù)組。

let foo = ['hello', 'world'] 
// 添加引用
let bar = foo

如果我重新分配 foo 的值為 [] 空數(shù)組,bar 變量仍指向分配給它的原始數(shù)組。

foo = []
 
// bar 不受影響
console.log(bar) // ['hello', 'world']

foo = [] 將一個新的數(shù)組的引用賦值給變量,其他引用并不受影響。這意味著以前數(shù)組的內(nèi)容被引用的話將依舊存在于內(nèi)存中,這將導(dǎo)致內(nèi)存泄漏。

如果我改為 foo.length = 0,刪除數(shù)組里的所有內(nèi)容,也將影響到其他引用。

let foo = ['hello', 'world']
let bar = foo
 
foo.length = 0
 
// `bar` 受影響
console.log(bar) // []

如果數(shù)組被聲明為常量,則不能將其重新分配給 []。這時我們應(yīng)該使用 lenght = 0。

const course = ['HTML', 'CSS', 'JavaScript']
course = [] // 會拋出異常:"Assignment to constant variable"
 
// 使用 length = 0
course.length = 0

到此這篇關(guān)于JavaScript中清空數(shù)組的幾種方法的文章就介紹到這了,更多相關(guān)JavaScript清空數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論