JSON.stringify在navigator.connection上不起作用如何解决?

时间:2019-01-25 11:54:32

标签: javascript

在第二个控制台上,它显示一些数据,但在第一个控制台日志上为空。我该如何解决这个问题?

var Network_data = navigator.connection;
console.log(JSON.stringify(Network_data));
console.log(Network_data);

3 个答案:

答案 0 :(得分:3)

JSON.stringify不起作用,因为对象本身没有任何属性,它们都属于其父对象。您应该使用for in循环来获取每个密钥。

var networkData = {};
for (var key in navigator.connection) {
  if (typeof navigator.connection[key] !== "function") {
    networkData[key] = navigator.connection[key];
  }
}
console.log(JSON.stringify(networkData));
console.log(networkData);

答案 1 :(得分:3)

如果不需要任何原型属性,可以使用

df %>%
  mutate_at(vars(matches("^W[0-9]+")), funs(ifelse(. < CP, 0, .)))

答案 2 :(得分:0)

只是想补充一个正确的答案,即JSON.stringify不会序列化继承的属性,而只会序列化对象拥有的属性,也不会对函数和循环引用进行字符串化。

在实例上运行Object.keys的证明将返回一个空集,因为navigator.connection不拥有任何属性

console.log(Object.keys(navigator.connection));

  

Object.keys()方法返回给定对象自身属性名称的数组