// compose函数
const space = (str) => str.split(' ');
const len = (arr) => arr.length;
const compose = (...fn) => value => {
return fn.reduce((pre, item) =>{
return item(pre);
},value)
}
const computedWord = compose(space, len)
console.log(computedWord('i am linsanxin')) // 3
console.log(computedWord('i am 23 year old')) // 5
console.log(computedWord('i am a author in juejin')) // 6
// (a == 1 && a == 2 && a == 3) 有可能是 true 吗?
// 方法一
// const a = {
// value: 0,
// valueOf() {
// return ++this.value;
// }
// }
// console.log(a==1&&a==2&&a==3);
// 方法二;
// let i = 0
// Object.defineProperty(window, 'a', {
// get() {
// return ++i
// }
// })
// console.log(a == 1 && a == 2 && a == 3) // true
// 方法三
// let test = {
// a:0
// }
// test = new Proxy(test, {
// get(target, key) {
// return ++target[key];
// }
// })
// console.log(test.a == 1 && test.a == 2 && test.a == 3)
// 方法四
const a = [1, 2, 3];
console.log(a.join)
a.toString = a.shift;
console.log(a == 1 && a == 2 && a == 3) // true
let arr = [1,2,3];
console.log(new String(arr));
function c(a,b,c,x) {}
console.log(c.length);
console