Skip to content
On this page

fromHex โ€‹

Decodes a hex value to a string, number or byte array.

Shortcut Functions:

Import โ€‹

ts
import { fromHex } from 'viem'

Usage โ€‹

ts
import { fromHex } from 'viem'

fromHex('0x1a4', 'number')
// 420

fromHex('0xc5cf39211876fb5e5884327fa56fc0b75', 'bigint')
// 4206942069420694206942069420694206942069n

fromHex('0x48656c6c6f20776f726c642e', 'string')
// "Hello world"

fromHex('0x48656c6c6f20576f726c6421', 'bytes')
// Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])

fromHex('0x1', 'boolean')
// true

Returns โ€‹

string | bigint | number | ByteArray

The targeted type.

Parameters โ€‹

hex โ€‹

  • Type: Hex

The hex value to decode.

toOrOptions โ€‹

  • Type: "string" | "hex" | "number" | "bigint" | "boolean" | Options

The output type or options.

ts
fromHex(
  '0x48656c6c6f20776f726c642e', 
  'string'
)
// 'Hello world'
ts
fromHex(
  '0x48656c6c6f20776f726c642e0000000000000000000000000000000000000000', 
  {
    size: 32,
    to: 'string'
  }
)
// 'Hello world'

Shortcut Functions โ€‹

hexToNumber โ€‹

  • Type: Hex

Decodes a hex value to a number.

ts
import { hexToNumber } from 'viem'

hexToNumber('0x1a4')
// 420

hexToNumber(
  '0x00000000000000000000000000000000000000000000000000000000000001a4', 
  { size: 32 }
)
// 420

hexToBigInt โ€‹

  • Type: Hex

Decodes a hex value to a bigint.

ts
import { hexToBigInt } from 'viem'

hexToBigInt('0xc5cf39211876fb5e5884327fa56fc0b75')
// 4206942069420694206942069420694206942069n

hexToBigInt(
  '0x0000000000000000000000000000000c5cf39211876fb5e5884327fa56fc0b75', 
  { size: 32 }
)
// 4206942069420694206942069420694206942069n

hexToString โ€‹

  • Type: Hex

Decodes a hex value to a string.

ts
import { hexToString } from 'viem'

hexToString('0x48656c6c6f20576f726c6421')
// "Hello World!"

hexToString(
  '0x48656c6c6f20576f726c64210000000000000000000000000000000000000000',
  { size: 32 }
)
// "Hello World!"

hexToBytes โ€‹

  • Type: Hex

Decodes a hex value to a byte array.

ts
import { hexToBytes } from 'viem'

hexToBytes('0x48656c6c6f20576f726c6421')
// Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])

hexToBytes(
  '0x48656c6c6f20576f726c64210000000000000000000000000000000000000000',
  { size: 32 }
)
// Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])

hexToBool โ€‹

  • Type: Hex

Decodes a hex value to a boolean.

ts
import { hexToBool } from 'viem'

hexToBool('0x1')
// true

hexToBool(
  '0x00000000000000000000000000000000000000000000000000000000000001',
  { size: 32 }
)
// true

Released under the MIT License.