<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          6種你應(yīng)該知道的強(qiáng)大JavaScript對象方法

          共 2795字,需瀏覽 6分鐘

           ·

          2021-03-29 10:35


          英文 | https://javascript.plainenglish.io/the-6-powerful-javascript-object-methods-that-you-should-know-b2a659ddf3b5
          翻譯 | web前端開發(fā)

          與任何其他編程語言一樣,JavaScript具有自己的數(shù)據(jù)類型,例如,數(shù)字,字符串,數(shù)組,對象等。這些數(shù)據(jù)類型使開發(fā)人員可以使用數(shù)據(jù)并用該語言實(shí)現(xiàn)許多有用的功能。
          對象是JavaScript中非常重要的數(shù)據(jù)類型,它們具有許多有用的內(nèi)置方法,我們可以使用和訪問這些方法,以幫助開發(fā)人員更輕松地處理對象。
          這就是為什么在本文中,我們將學(xué)習(xí)一些你應(yīng)該在JavaScript中了解的有用的對象方法。
          現(xiàn)在,讓我們開始吧。

          1、Object.keys( )

          該方法Object.keys( )(大寫的O)用于返回一個(gè)數(shù)組,該數(shù)組包含我們作為參數(shù)傳遞給它的特定對象的所有鍵。
          讓我們看下面的例子:
          const employee = {  name: "James",  age: 25,  available: true}//Print the keys in the consoleconsole.log(Object.keys(employee));//output: ["name", "age", "available"]

          如你在上面的示例中看到的,我們得到一個(gè)包含鍵作為輸出的數(shù)組。現(xiàn)在,你可以使用任何其他數(shù)組方法來訪問和迭代鍵。

          由于對象不具有l(wèi)ength屬性,因此,你也可以通過Object.keys( )用來獲取對象的長度。

          示例如下:

          Object.keys(employee).length; //3

          2、Object.freeze( )

          該方法Object.freeze( )防止對象中的數(shù)據(jù)突變。因此,你不能將Object.freeze( )作為參數(shù)傳遞給對象,更不能添加,更新或刪除屬性。

          看下面的例子:

          const employee = {  name: "James",  age: 25,  available: true}//Freezing the object.Object.freeze(employee);//updating and adding properties.employee.name = "Brad";employee.newProp = "Hard Worker";console.log(employee);//Output: {name: "James", age: 25, available: true}

          如你所見,即使我們更新了屬性,該對象也不會(huì)更改。

          3、Object.seal( )

          該方法Object.seal( )有點(diǎn)類似于Object.freeze( )。它可以防止向?qū)ο筇砑有聦傩裕强梢愿暮透卢F(xiàn)有屬性。

          const user = {  name: "Alex",  age: 23,  isOnline: false}//使用Object.seal()Object.seal(user);//更新屬性。user.isOnline = true;//添加一個(gè)屬性。user.active = false;console.log(user);//輸出:{名稱:“ Alex”,年齡:23,isOnline:true}

          該屬性isOnline已更新,但是我們無法將該屬性添加active到對象中,因?yàn)槲覀兪褂肙bject.seal( )它來防止這種情況的發(fā)生。

          4、Object.values( )

          該方法Object.values()允許你將對象內(nèi)的所有值作為數(shù)組獲取。你只需要將對象作為參數(shù)傳遞給方法Object.values()。

          這是一個(gè)例子:

          const user = {  name: "Alex",  age: 23,  isOnline: false}console.log(Object.values(user));//output: ["Alex", 23, false]

          如你所見,你將獲得一個(gè)對象值數(shù)組。現(xiàn)在,你可以使用該數(shù)組執(zhí)行任何操作。

          5、Object.entries( )

          該方法Object.entries()也是有用的。它允許你同時(shí)獲取對象的鍵和值,并返回一個(gè)多維數(shù)組,該多維數(shù)組包含每個(gè)鍵和值的其他數(shù)組。

          讓我們看一個(gè)實(shí)際的例子:

          const user = {  name: "Alex",  age: 23,  isOnline: false}console.log(Object.entries(user));//output: [["name", "Alex"], ["age", 23], ["isOnline", false]]

          如你在示例中所見,該方法Object.entries( )允許我們將鍵和值作為數(shù)組獲取。

          6、Object.create( )

          該方法Object.create()用于從另一個(gè)現(xiàn)有對象的原型創(chuàng)建一個(gè)新對象。

          看下面的例子:

          const user = {  firstName: "John",  lastName: "Doe",  age: 25,  fullName(){    return `${this.firstName} ${this.lastName}`;  }}//新對象。let newObject = Object.create(user);//更新屬性。newObject.firstName = "Mehdi";newObject.lastName = "Aoussiad";//我們也可以在此新對象中使用user的fullName方法。newObject.fullName();  //輸出:Mehdi Aoussiadconsole.log(newObject);//輸出:{firstName:“ Mehdi”,lastName:“ Aoussiad”}

          在上面的示例中,我們用于Object.create()創(chuàng)建一個(gè)具有用戶對象原型的新對象。這就是為什么我們能夠更改屬性并user在新對象中使用對象的方法的原因。如果你不想在對象中復(fù)制代碼,這將非常有用。

          結(jié)論

          如你所見,這些對象方法在JavaScript中很有用,因?yàn)樗鼈兡軌驇椭_發(fā)人員更輕松地處理對象。在某些情況下,你肯定需要使用這些方法。

          感謝您閱讀本文。希望你覺得它有用。

          本文完?

          學(xué)習(xí)更多技能

          請點(diǎn)擊下方web前端開發(fā)


          瀏覽 37
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  午夜成人一区二区 | 无码人妻一区二区三区9视频 | 蜜桃免费视频 | 一级a爱视频 | 免费黄色成人网站视频 |