On Sun, Mar 22, 2015 at 6:46 AM, Andrea Giammarchi < [email protected]> wrote:
> There's no such functionality indeed but you might want to have a look at > this gist: https://gist.github.com/WebReflection/8f227532143e63649804 > > It gives you the ability to write `'test1 ${1 + 2} test2 ${3 + 4}' > .template();` and read `test1 3 test2 7` or to pass an object similar to > .Net String.format so that your Stack overflow code would be like the > following: > > ```js > > let a = "b:${b}"; > let b = 10; > > console.log(a.template({b:b})); > > // or > > console.log(a.template({b:27})); > > ``` > > You pass named properties and it works with nested properties too (i.e. > ${down.the.road}) > > It does use Function which is safe, > Function is safe almost everywhere, but it is worth pointing out https://bugs.webkit.org/show_bug.cgi?id=106160 https://bugs.webkit.org/show_bug.cgi?id=131137 test_CANT_SAFELY_VERIFY_SYNTAX at https://code.google.com/p/google-caja/source/browse/trunk/src/com/google/caja/ses/repairES5.js#3198 repair_CANT_SAFELY_VERIFY_SYNTAX at https://code.google.com/p/google-caja/source/browse/trunk/src/com/google/caja/ses/repairES5.js#4170 After the repair, the Function constructor is safe again on Safari, but at considerable expense. > compared to eval, and needed to eventually de-opt from 'use strict' but of > course you could write your own parser avoiding Function completely. > > Finally, I agree it would be nice to be able to have a standard way to > template strings in JS, the templating as it is plays very poorly with > runtime generated strings, using eval for that looks the dirtiest thing on > earth. > > Regards > > > > On Sun, Mar 22, 2015 at 10:05 AM, KOLANICH <[email protected]> wrote: > >> I needed a functionality but haven't found it. >> See >> https://stackoverflow.com/questions/29182244/convert-a-string-to-a-template-string >> for more details. >> I think that this should be included into standard; >> >> >> Also we need a standard format string functionality like >> https://msdn.microsoft.com/en-us/library/system.string.format.aspx and >> <https://docs.python.org/2/library/string.html#string-formatting> >> https://docs.python.org/2/library/string.html#string-formatting >> >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss >> >> > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > > -- Cheers, --MarkM
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

