// function createArray(...elements) {
// let handler = {
// get(target, propKey, receiver) {
// let index = Number(propKey);
// if (index < 0) {
// propKey = String(target.length + index);
// console.log('propKey==',propKey)
// }
// return Reflect.get(target, propKey, receiver);
// }
// };
// let target = [];
// target.push(...elements);
// return new Proxy(target, handler);
// }
// let arr = createArray('a', 'b', 'c');
// console.log(arr[-5])
// var pipe = function (value) {
// var funcStack = [];
// var oproxy = new Proxy({} , {
// get : function (pipeObject, fnName) {
// if (fnName === 'get') {
// return funcStack.reduce(function (val, fn) {
// return fn(val);
// },value);
// }
// funcStack.push(window[fnName]);
// return oproxy;
// }
// });
// return oproxy;
// }
// var double = n => n * 2;
// var pow = n => n * n;
// var reverseInt = n => n.toString().split("").reverse().join("") | 0;
// pipe(3).double.pow.reverseInt.get; // 63
// let obj = {
// name: 'lxh',
// age:18
// }
// let obj1 = Object.create(obj)
// console.log('obj1==', obj1)
// console.log('obj.__proto__==', obj.__proto__)
var myObject = {
foo: 1,
set bar(value) {
return this.foo = value;
},
}
console