Select-JavaScriptAstNode
August 3, 2026 ยท View on GitHub
SYNOPSIS
Returns descendant nodes from an Acornima JavaScript AST or JavaScript source.
SYNTAX
Source (Default)
Select-JavaScriptAstNode [-Source] <string> [-Type <string[]>] [-IncludeRoot] [-FilterScript <scriptblock>] [-Module] [-Tolerant] [-PreserveParens] [<CommonParameters>]
Ast
Select-JavaScriptAstNode [-Ast] <Node> [-Type <string[]>] [-IncludeRoot] [-FilterScript <scriptblock>] [<CommonParameters>]
DESCRIPTION
Returns descendant nodes from an Acornima JavaScript AST or JavaScript source.
EXAMPLES
EXAMPLE 1
ConvertFrom-JavaScriptAst -Content 'const value = 42;' | Select-JavaScriptAstNode -Type VariableDeclaration
EXAMPLE 2
$script = @'
const settings = {
apiKey: "abc",
enabled: true
};
'@
Select-JavaScriptAstNode -Source $script -Type Script,ObjectExpression -IncludeRoot
EXAMPLE 3
$module = @'
import value from "./settings.js";
export const settings = {
enabled: true
};
'@
Select-JavaScriptAstNode -Source $module -Module -Type ImportDeclaration,ExportNamedDeclaration
PARAMETERS
-Ast
Acornima AST node to inspect.
Type: Node
Parameter Sets: Ast
Aliases: InputObject, Node
Possible values:
Required: True
Position: 0
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-FilterScript
Optional PowerShell predicate used to filter each matched AST node. The node is passed as the first scriptblock argument.
Type: ScriptBlock
Parameter Sets: Source, Ast
Aliases: None
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-IncludeRoot
Includes the root node in the traversal output.
Type: SwitchParameter
Parameter Sets: Source, Ast
Aliases: None
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Module
Parses source input as an ECMAScript module.
Type: SwitchParameter
Parameter Sets: Source
Aliases: None
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-PreserveParens
Preserves parenthesized expression nodes for source input.
Type: SwitchParameter
Parameter Sets: Source
Aliases: None
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Source
JavaScript content to parse and inspect.
Type: String
Parameter Sets: Source
Aliases: Content
Possible values:
Required: True
Position: 0
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-Tolerant
Enables Acornima tolerant parsing for source input.
Type: SwitchParameter
Parameter Sets: Source
Aliases: None
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Type
Node type names to return, such as VariableDeclaration, ObjectExpression, or ClassBody.
Type: String[]
Parameter Sets: Source, Ast
Aliases: None
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
INPUTS
System.StringAcornima.Ast.Node
OUTPUTS
Acornima.Ast.Node
RELATED LINKS
- None