param.macro:受Scala和Kotlin启发的JavaScript简洁参数

param.macro 从Scala和Kotlin中汲取灵感,为JavaScript带来了更简洁的部分应用语法和lambda参数。

它是什么?

这个宏引入了两个主要符号: it_

  • it 可以在传递给函数的表达式中使用,自动创建一个接受单个参数的lambda函数。例如, utensilList.find(it.isFork())
  • _ 符号源自Scala,用作占位符,表示函数调用被部分应用 — 代码不会立即执行,而是返回一个新函数,接收你用占位符标记的参数。例如, add(1, _) 会返回一个新函数,它接受一个参数并将其与1相加。

为什么要用它?

it_ 让你的代码更简洁易读,尤其是在处理函数式编程概念时。

想了解更多?

前往介绍性博客文章深入了解这个宏,并查看部分应用和lambda参数的实际应用。

示例:

utensilList.find(it.isFork())
add(1, _)
const areSameThing = _ === _
it.getPower().level > 9000
const greet = `Hello, ${_}!`
;[1, 2].reduce(lift(_ + _))

安装:

yarn add --dev param.macro

确保还安装了 Babelbabel-plugin-macros (以下示例使用Babel v7)。

zip
param_macro-master.zip 预估大小:30个文件
folder
param.macro-master 文件夹
file
.gitattributes 19B
folder
.github 文件夹
file
FUNDING.yml 19B
file
plugin.js 2KB
folder
src 文件夹
file
implicit-parameters.js 2KB
file
lift.js 752B
file
util.js 4KB
file
index.js 842B
file
placeholders.js 2KB
folder
playground 文件夹
folder
src 文件夹
file
index.html 10KB
file
markdown.css 3KB
file
github.css 2KB
file
index.js 11KB
file
webpack.config.babel.js 1KB
file
.npmrc 19B
file
package.json 1KB
file
license 1KB
file
.travis.yml 418B
folder
test 文件夹
file
plugin.js 2KB
folder
helpers 文件夹
file
plugin-rewrite-imports.js 1KB
file
plugin-eval.js 219B
file
macros.js 3KB
file
implicit-parameters.js 4KB
file
mix.js 3KB
file
lift.js 994B
file
placeholders.js 6KB
file
.npmrc 19B
file
.gitignore 145B
file
readme.md 14KB
file
.babelrc.js 261B
file
package.json 1KB
zip 文件大小:32.33KB