Search
Write a publication
Pull to refresh
3
0
Илья @iliks

User

Send message

Мне необходимо проводить порядка 100т. операций или даже больше, в таком случае Function не будет особо приятным решением

15118 - время 50т. операций через Function()

1154 - время 50т. операций через calc()

В среднем моё решение в 8 раз быстрее

соглашусь и возможно даже это будет более быстрым решением, но для моей задачи требовалось отказаться и от eval и от Function.

Данный код гуляет на просторах интернета и вполне рабочий способ

const rgx = /(?:(?:^|[-+_*/])(?:\s*-?\d+(\.\d+)?(?:[eE][+-]?\d+)?\s*))+$/; function parse(str) { if (!rgx.test(str)) return 'invalid entry!' return Function('use strict'; return (<span class="hljs-subst">${str}</span>))() }

прошу прощения выражение в тексте выше, не тот на котором проводил тесты с разными примерами кода, потому получилось несколько глупо

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity