前端前端
fabric
算法
jsBlock
styleBlock
svgBlock
工具其他
Vue、React相关
webgl
GitHub
fabric
算法
jsBlock
styleBlock
svgBlock
工具其他
Vue、React相关
webgl
GitHub
  • parseInt
  • preventDefault报错
  • promise
  • requestIdleCallback
  • undefined
  • webworker
  • 代码块
  • 前后端自动刷新
  • 多个标签页通讯
  • 实现个简单爬虫
  • 执行上下文
  • 控制台
  • 查找文件中的图片并下载
  • 深度广度优先
  • 累加函数
  • 触摸事件和键盘事件

累加函数

toString

  1. console.log 会默认 toString
function f() {}
f.toString = function() {
  return 8888
}
console.log(f) // 8888
function f() {
  return f
}
f.toString = function() {
  return 8888
}
console.log(f()) // 8888

实现 a(1)(2)(3)

function add(a) {
  function sum(b) {
    a = b ? a + b : a
    return sum
  }
  sum.toString = function() {
    return a
  }
  return sum
}

实现多参数累加

function add(a) {
  let args = [...arguments]
  function sum(b) {
    args.push(...arguments)
    return sum
  }
  sum.toString = function() {
    return args.reduce((a, b) => a + b)
  }
  return sum
}

console.log(add(1)(2))
console.log(add(1, 5)(2))
Edit this page
最近更新:: 2021/8/12 16:22
Contributors: wuhui
Prev
深度广度优先
Next
触摸事件和键盘事件