Skip to content

toFunctionSelector

Returns the function selector (4 byte encoding) for a given function definition.

Install

import { toFunctionSelector } from 'viem'

Usage

import { 
const toFunctionSelector: (fn: string | AbiFunction) => `0x${string}`

Returns the function selector for a given function definition.

toFunctionSelector
} from 'viem'
const
const selector_1: `0x${string}`
selector_1
=
function toFunctionSelector(fn: string | AbiFunction): `0x${string}`

Returns the function selector for a given function definition.

toFunctionSelector
('function ownerOf(uint256 tokenId)')
Output: 0x6352211e
const
const selector_2: `0x${string}`
selector_2
=
function toFunctionSelector(fn: string | AbiFunction): `0x${string}`

Returns the function selector for a given function definition.

toFunctionSelector
('ownerOf(uint256)')
Output: 0x6352211e
// or from an `AbiFunction` on your contract ABI const
const selector_3: `0x${string}`
selector_3
=
function toFunctionSelector(fn: string | AbiFunction): `0x${string}`

Returns the function selector for a given function definition.

toFunctionSelector
({
name: string
name
: 'ownerOf',
type: "function"
type
: 'function',
inputs: readonly AbiParameter[]
inputs
: [{
name: string
name
: 'tokenId',
type: "uint256"
type
: 'uint256' }],
outputs: readonly AbiParameter[]
outputs
: [],
stateMutability: AbiStateMutability
stateMutability
: 'view',
})
Output: 0x6352211e

Returns

Hex

The selector as a hex value.

Parameters

function

The function to generate a selector for.