1/** 2 * Copyright (c) 2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16export class Base { 17 baseVal: number = 1; 18 getCurrent() { 19 return this; 20 } 21} 22 23export class Child extends Base { 24 childVal: number = 2; 25 getSuper() { 26 return super.getCurrent(); 27 } 28} 29 30export let baseFunc = new Base().getCurrent; 31export let childFunc = new Child().getSuper; 32 33export let fooBaseObj = { 34 foo: baseFunc, 35 fooFunc: function() { 36 return this.foo(); 37 } 38}; 39export let fooChildObj = { 40 foo: childFunc, 41 fooFunc: function() { 42 return this.foo(); 43 } 44}; 45 46export let arrowFunc = () => { 47 return this; 48};