Kaip gauti Node.js buferio ilgį?

Kaip Gauti Node Js Buferio Ilgi



Buferis yra labiau panašus į visuotinį objektą, kuris turi pagrindinę funkciją saugoti ir tvarkyti gautus duomenis iš srauto dvejetainiu formatu. Buferio dydis yra lygus jame esančio turinio dydžiui. Jei esančios eilutės ilgis yra ' 9 “, tada buferis, kuriame yra, taip pat turi ilgį „ 9 “. Tačiau kai kuriais naudojimo atvejais buferio dydis priskiriamas statiškai, o tai neturi jokios sąveikos su buferio turiniu. Norėdami išmatuoti arba gauti buferio ilgį abiejuose scenarijuose, „ Buferis.ilgis “ naudojamas metodas.

Šiame vadove paaiškinama, kaip gauti buferio ilgį Node.js.

Kaip gauti Node.js buferio ilgį?

ilgis () “ ir „ Buffer.byteLength() ” metodai yra naudojami tik norint gauti atitinkamai paskirtą ir faktinį buferio ilgį Node.js. Tikrasis buferio ilgis gali būti sukurtas naudojant bet kurį buferio kūrimo metodą, tačiau paskirtas fiksuoto ilgio buferis sukuriamas naudojant „ Buffer.alloc() “ metodas. Šis metodas neturi nieko bendra su turiniu ir yra puikus pasirinkimas, kai reikia sukurti fiksuoto ilgio tuščią buferį. Turinį galima pridėti naudojant ' užpildyti () “ metodas.







Sintaksė



„“ sintaksė Buffer.length() “ metodas parodytas žemiau:



selBuffer. ilgio ( )

„“ sintaksė Buffer.byteLength() “ pateikta žemiau:





selBuffer. baito ilgis ( styga )

Vienas parametras rodo objektą kaip ' Styga ', ' Buferis ', ' TypedArray “ ir pan., norėdami apskaičiuoti ilgį.

Grąžinimo tipas



Šie metodai grąžina pasirinkto ' selBuffer “ sveikųjų skaičių formatu.

Pažvelkime į buferio ilgio nuskaitymo įgyvendinimą Node.js.

1 pavyzdys: priskirto ilgio gavimas naudojant ilgio ypatybę

Šiame pavyzdyje į buferį buvo įterptas tuščias arba trumpo ilgio turinys, kurio ilgis yra daug didesnis nei saugomas turinys. Tada buferio paskirtis ilgis buvo nuskaitytas naudojant „ Buferis.ilgis ' nuosavybė:

konst demoBuf = Buferis. skirti ( penkiasdešimt ) ;
demoBuf. ilgio ;
demoBuf. rašyti ( 'Linux' , 0 ) ;
konsolė. žurnalas ( demoBuf. ilgio ) ;

Aukščiau pateiktame kode:

  • Buferis“ demoBuf yra sukurtas ir ilgis arba dydis penkiasdešimt “ jam skirta.
  • rašyti () “ metodas taikomas per „demoBuf“, kad į buferį būtų įterptas atsitiktinis turinys.
  • Po to „ ilgio turtas yra prijungtas prie demoBuf ” Buferis, kad gautumėte sukurto buferio ilgį.

Sukurta išvestis rodo, kad buvo gautas paskirtas buferio ilgis:

2 pavyzdys: ilgio gavimas naudojant Buffer.byteLength() metodą

Šiame pavyzdyje pasirinkto buferio ilgis bus nuskaitytas naudojant „ Buffer.byteLength() “ metodas:

konst srcBuferis = Buferis. skirti ( penkiolika ) ;

konst dydis = Buferis. baito ilgis ( srcBuferis ) ;
konsolė. žurnalas ( dydis ) ;

Aukščiau pateiktame kode:

  • Pirma, buferis pavadinimu ' srcBuferis “ yra sukurtas, kurio ilgis yra “ penkiolika “ per „ alloc () “ metodas.
  • Tada ' baito ilgis () “ metodas iškviečiamas ir “ srcBuferis “ perduodamas skliausteliuose kaip būtinas parametras.
  • Aukščiau pateikto metodo išvestis dedama į atsitiktinį kintamąjį ' dydis “, kuris tada atspausdinamas ant konsolės.

Sugeneruota išvestis rodo, kad buferio ilgis buvo nuskaitytas:

Tai viskas apie buferio ilgio nuskaitymą Node.js.

Išvada

Norėdami sužinoti Node.js buferio ilgį, „ Buferis.ilgis “ nuosavybė ir “ Buffer.byteLength() “ metodas yra naudojamas. „ Buferis.ilgis ypatybė yra pridedama prie tikslinio buferio, kad būtų gautas ilgis, o jei Buffer.byteLength() “ metodą, tikslinis buferis perduodamas kaip parametras skliausteliuose. Šis vadovas iliustruoja buferio ilgio išieškojimą iš Node.js.