Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Move To First 2
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
Browser:
Chrome 126
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Old Code
282889.2 Ops/sec
New Code
278726.6 Ops/sec
Script Preparation code:
var wallets = [ { currency: { id: "USD" } }, { currency: { id: "IDR" } }, { currency: { id: "SGD" } }, ]
Tests:
Old Code
const moveCurrencyToFirst = (wallets, currencyId) => { const currencyIdx = wallets.findIndex( (wallet) => wallet.currency.id === currencyId ); const tempWallets = [...wallets]; if (currencyIdx !== -1) { const currWallet = wallets[currencyIdx]; tempWallets.splice(currencyIdx); tempWallets.unshift(currWallet); } return tempWallets; }; console.log(moveCurrencyToFirst(wallets, "SGD"))
New Code
const moveCurrencyToFirst = (wallets, currencyId) => { if(!wallets.length) return []; return wallets.reduce((result, wallet) => { if(wallet.currency.id === currencyId) { return [wallet, ...result] } return [...result, wallet] }, []) }; console.log(moveCurrencyToFirst(wallets, "SGD"))