yahoo / serialize-javascript

Serialize JavaScript to a superset of JSON that includes regular expressions and functions.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The regExp of IS_PURE_FUNCTION & IS_ARROW_FUNCTION seem to be extra???

zhtyytg opened this issue · comments

source code :

var IS_PURE_FUNCTION = /function.?(/;
var IS_ARROW_FUNCTION = /.
?=>.*?/;

// pure functions, example: {key: function() {}}
if(IS_PURE_FUNCTION.test(serializedFn)) {
return serializedFn;
}

// arrow functions, example: arg1 => arg1+5
if(IS_ARROW_FUNCTION.test(serializedFn)) {
return serializedFn;
}

Q:
when I use serialize like:
{
name: "aa",
attrname: "bb",
render(item, row) {
return JSON.parse(item) .map((it) => it.name).join("");
},
}

the regExp will catch this and cause problem, not when it's commented.
then I test the normal way like this:
{
name: "aa",
attrname: "bb",
render: (item, row) => {
return JSON.parse(item) .map((it) => it.name).join("");
},
}

and:

{
name: "aa",
attrname: "bb",
render: function(item, row) {
return JSON.parse(item) .map((it) => it.name).join("");
},
}

without the regExps, these are also correct.

could you please explain me?