From 034399461effb281251db8f6c7a0f5fbd69104a2 Mon Sep 17 00:00:00 2001 From: Postbot Date: Wed, 30 Aug 2017 04:46:19 +0800 Subject: [PATCH] Create _benchmarks/reduce-vs-map.md --- _benchmarks/reduce-vs-map.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 _benchmarks/reduce-vs-map.md diff --git a/_benchmarks/reduce-vs-map.md b/_benchmarks/reduce-vs-map.md new file mode 100644 index 00000000..fe3acf34 --- /dev/null +++ b/_benchmarks/reduce-vs-map.md @@ -0,0 +1,15 @@ +--- +title: Reduce vs Map +setup: | + var p = "PalmSystem.launchParams.details.target"; +tests: + - + name: Reduce + code: | + p.split(/\./).reduce((out, tok, i) => `(${i==1 ? `((typeof ${out} !== 'undefined' && ${out})` : out} || {}).${tok}`) + - + name: Map + code: | + p.replace(/^([^.]+)\./, 'typeof $1 !== \'undefined\'.$1.').split(/\./).map((x, i, a) => i<2 ? x : a.slice(1, i+1).join('.')).join(' && ') +--- +Nested object parsing.