Reading through the documentation for powershells add-type it seems you can add JScript code to you powershell session.
Firstly is there a decent example of how this is done and secondly can you use this to validate normal javascript code (as I understand JScript is the MS implementation)
This may be a good starting point
PowerShell ABC's - J is for JavaScript (by Joe Pruitt)
Here is a code snippet from the above article:
function Create-ScriptEngine()
{
param([string]$language = $null, [string]$code = $null);
if ( $language )
{
$sc = New-Object -ComObject ScriptControl;
$sc.Language = $language;
if ( $code )
{
$sc.AddCode($code);
}
$sc.CodeObject;
}
}
PS> $jscode = @"
function jslen(s)
{
return s.length;
}
"@
PS> $js = Create-ScriptEngine "JScript" $jscode;
PS> $str = "abcd";
PS> $js.jslen($str);
4
Here is a simple json parser: https://gist.github.com/octan3/1125017
$code = "static function parseJSON(json) {return eval('(' +json + ')');}"
$JSONUtil = (Add-Type -Language JScript -MemberDefinition $code -Name "JSONUtil" -PassThru)[1]
$obj = $JSONUtil::parseJSON($jsonString)
-PassThru
will give you an object (actually two objects; you want the second one) that you can use to call the functions.
You can omit it if you want, and call the function like this:
[Microsoft.PowerShell.Commands.AddType.AutoGeneratedTypes.JSONUtil]::parseJSON($jsonString)
but that's a bit of a pain.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With