14514f5e3Sopenharmony_ci/*
24514f5e3Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd.
34514f5e3Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
44514f5e3Sopenharmony_ci * you may not use this file except in compliance with the License.
54514f5e3Sopenharmony_ci * You may obtain a copy of the License at
64514f5e3Sopenharmony_ci *
74514f5e3Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
84514f5e3Sopenharmony_ci *
94514f5e3Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
104514f5e3Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
114514f5e3Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
124514f5e3Sopenharmony_ci * See the License for the specific language governing permissions and
134514f5e3Sopenharmony_ci * limitations under the License.
144514f5e3Sopenharmony_ci */
154514f5e3Sopenharmony_ci
164514f5e3Sopenharmony_cideclare function print(arg:any):string;
174514f5e3Sopenharmony_ciconst obja = { a: 1 };
184514f5e3Sopenharmony_ciconst copy = Object.assign({}, obja);
194514f5e3Sopenharmony_ciprint(copy.a);
204514f5e3Sopenharmony_ci
214514f5e3Sopenharmony_ciconst o1 = { a: 1 };
224514f5e3Sopenharmony_ciconst o2 = { b: 2 };
234514f5e3Sopenharmony_ciconst o3 = { c: 3 };
244514f5e3Sopenharmony_ci
254514f5e3Sopenharmony_ciconst obj = Object.assign(o1, o2, o3);
264514f5e3Sopenharmony_ciprint(obj.a + obj.b + obj.c)
274514f5e3Sopenharmony_ciconst o4 = { a: 1, b: 1, c: 1 };
284514f5e3Sopenharmony_ciconst o5 = { b: 2, c: 2 };
294514f5e3Sopenharmony_ciconst o6 = { c: 3 };
304514f5e3Sopenharmony_ci
314514f5e3Sopenharmony_ciconst obj1 = Object.assign({}, o4, o5, o6, o6);
324514f5e3Sopenharmony_ciprint(obj1.a + obj1.b + obj1.c);
334514f5e3Sopenharmony_ci
344514f5e3Sopenharmony_ciconst obj2 = Object.create(
354514f5e3Sopenharmony_ci  { foo: 1 },
364514f5e3Sopenharmony_ci  {
374514f5e3Sopenharmony_ci    bar: {
384514f5e3Sopenharmony_ci      value: 2,
394514f5e3Sopenharmony_ci    },
404514f5e3Sopenharmony_ci    baz: {
414514f5e3Sopenharmony_ci      value: 3,
424514f5e3Sopenharmony_ci      enumerable: true,
434514f5e3Sopenharmony_ci    },
444514f5e3Sopenharmony_ci  },
454514f5e3Sopenharmony_ci);
464514f5e3Sopenharmony_ci
474514f5e3Sopenharmony_ciconst copy1 = Object.assign({}, obj2);
484514f5e3Sopenharmony_ciprint(copy1.baz);
494514f5e3Sopenharmony_ciprint(copy1.hasOwnProperty("bar"));
504514f5e3Sopenharmony_ci
514514f5e3Sopenharmony_ciconst v1 = "abc";
524514f5e3Sopenharmony_ciconst v2 = true;
534514f5e3Sopenharmony_ciconst v3 = 10;
544514f5e3Sopenharmony_ciconst v4 = Symbol("foo");
554514f5e3Sopenharmony_ci
564514f5e3Sopenharmony_ciconst obj3 = Object.assign({}, v1, null, v2, undefined, v3, v4);
574514f5e3Sopenharmony_ciprint(Object.values(obj3))
58