| //------------------------------------------------------------------------------------------------------- | |
| // Copyright (C) Microsoft. All rights reserved. | |
| // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. | |
| //------------------------------------------------------------------------------------------------------- | |
| function PropertyExists(obj, propName) | |
| { | |
| return obj.hasOwnProperty(propName); | |
| } | |
| var val = 100; | |
| function IncrVal() | |
| { | |
| telemetryLog(`IncrVal:: ${this.val} args.length : ${arguments.length}`, true); | |
| this.val++; | |
| return this.val + " " + arguments.length; | |
| } | |
| var fGlobalThis1 = IncrVal.bind(); | |
| var fGlobalThis2 = IncrVal.bind(this); | |
| var fGlobalThis3 = IncrVal.bind(this, 50); | |
| var fGlobalThisNull = IncrVal.bind(null); | |
| var objWithVal1 = { val : 200 } | |
| var fLocal1 = IncrVal.bind(objWithVal1); | |
| var x = 20; | |
| var y = 30; | |
| function add() | |
| { | |
| return this.x + this.y; | |
| } | |
| var o = { x: 5, y: 6}; | |
| var f = add.bind(o); | |
| var f2 = new f(); | |
| WScript.SetTimeout(testFunction, 50); | |
| ///////////////// | |
| function testFunction() | |
| { | |
| telemetryLog(`global object 1 ${fGlobalThis1()}`, true); | |
| telemetryLog(`global object 1 ${fGlobalThis1(10,20)}`, true); | |
| telemetryLog(`global object 2 ${fGlobalThis2()}`, true); | |
| telemetryLog(`global object 2 ${fGlobalThis2(10,20)}`, true); | |
| telemetryLog(`global object 3 ${fGlobalThis3()}`, true); | |
| telemetryLog(`global object 3 ${fGlobalThis3(10,20)}`, true); | |
| telemetryLog(`global object null ${fGlobalThisNull(10,20)}`, true); | |
| telemetryLog(`local length ${fLocal1.length}`, true); | |
| telemetryLog(`Local object2 ${fLocal1(10)}`, true); | |
| telemetryLog(`Add Test ${add()}`, true); | |
| telemetryLog(`f Test ${f()}`, true); | |
| telemetryLog(`Proto Test ${add.prototype.isPrototypeOf(f2)}`, true); | |
| emitTTDLog(ttdLogURI); | |
| } |