blob: 5efae566be58d3c5ff5b74145fca09e28991df95 [file] [log] [blame]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
function test(x) {
WScript.Echo("test apply simple call with one argument: " + x );
}
test.apply(null, ["val1", "val2", "val3"]);
function test1(x, y, z) {
WScript.Echo("test apply simple call with 3 arguments: " + x + " , " + y + " , " + z);
}
test1.apply(null, ["p1", "p2", "p3"]);
function test2(x, y) {
WScript.Echo("In test2 apply ");
this.a = x;
this.b = y
}
var o1 = new Object();
test2.apply(o1, [9, "secondValue"]);
WScript.Echo("test apply call to function that sets properties in 'this': " + o1.a + " , " + o1.b );
function test3() {
WScript.Echo("In test3 apply ");
this.a = "param1";
this.b = 99
}
test3.apply();
WScript.Echo("test apply call to function that sets properties in global 'this': " + a + " , " + b);
function testArg(x, y, z) {
WScript.Echo("**run tests with Arguments object");
test.apply(null, arguments);
test1.apply(null, arguments);
var o1 = new Object();
test2.apply(o1, arguments);
WScript.Echo("test apply call to function that sets properties in 'this': " + o1.a + " , " + o1.b);
}
testArg("1stArg", "2ndArg", "3rdArg");