//------------------------------------------------------------------------------------------------------- | |
// Copyright (C) Microsoft. All rights reserved. | |
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. | |
//------------------------------------------------------------------------------------------------------- | |
// basic try/catch testcases, including functions | |
function print(x) | |
{ | |
WScript.Echo(x); | |
} | |
function f(n, str) | |
{ | |
try | |
{ | |
if(n == 0) | |
throw str; | |
else | |
f(n-1, str); | |
} | |
finally | |
{ | |
print("f(" + n + "): " + str); | |
} | |
} | |
try | |
{ | |
f(10, "test 1"); | |
} | |
catch(a) | |
{ | |
print(a); | |
} | |
try { | |
throw "Hello"; | |
} | |
catch (e) | |
{ | |
with({}) { print(e); } | |
} | |
var d = {toISOString:1,toJSON:Date.prototype.toJSON}; | |
try { | |
d.toJSON() | |
} | |
catch(e) | |
{ | |
with({}) | |
{ | |
print(e); | |
} | |
} | |
var a = "global"; | |
try | |
{ | |
throw "abc"; | |
} | |
catch(e) | |
{ | |
eval("var a = 'catch-local';") | |
} | |
print(a); | |