获取类似于 JSON.stringify 的值类型

Get values types like similar to JSON.stringify

如果我 console.log 我的数组我得到这个:

[ 'query', undefined, [Function] ]

但是如果我 JSON.stringify 我得到的数组

['query',null,null]

在大多数情况下,这正是您在转换 JSON 时想要的。

但是我想知道是否有办法像第一个数组那样捕获字符串或类型数组。

someFunc(arr) // '[ 'query', undefined, [Function] ]' (one big string)
someFunc(arr) // [ 'query', 'undefined', '[Function]' ] (array of strings)

嗯,你可以像这样映射项目:

['query', undefined, function() { }].map(function(item) {
  if (item instanceof Function) return '[Function]';
  if (item === null) return 'null';
  if (item === undefined) return 'undefined';
  return item.toString();
});