Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JSON.stringify在navigator.connection上不工作如何解决?_Javascript - Fatal编程技术网

Javascript JSON.stringify在navigator.connection上不工作如何解决?

Javascript JSON.stringify在navigator.connection上不工作如何解决?,javascript,Javascript,在第二个控制台上,它显示一些数据,但在第一个控制台日志上为空。我如何解决这个问题 var Network\u data=navigator.connection; log(JSON.stringify(Network_data)); 控制台日志(网络数据)JSON.stringify不起作用,因为对象本身没有任何属性,它们都属于其父对象。您应该使用for in循环来获取每个键 var networkData={}; for(navigator.connection中的var键){ if(导航

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

var Network\u data=navigator.connection;
log(JSON.stringify(Network_data));

控制台日志(网络数据)
JSON.stringify
不起作用,因为对象本身没有任何属性,它们都属于其父对象。您应该使用
for in
循环来获取每个键

var networkData={};
for(navigator.connection中的var键){
if(导航器类型.连接[键]!=“功能”){
networkData[key]=navigator.connection[key];
}
}
log(JSON.stringify(networkData));

console.log(networkData)如果您不需要任何可以使用的原型属性

const { downlink, effectiveType, onchange, rtt, saveData } = navigator.connection; 
console.log(JSON.stringify({ downlink, effectiveType, onchange, rtt, saveData }));`

只想在nick的正确答案中添加一点:
JSON.stringify
不会序列化继承的属性,而只序列化对象所拥有的属性,也不会序列化函数和循环引用

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


console.log(Object.keys(navigator.connection))您在网络数据中存储了什么数据?如果我没有错的话,这是因为“function addEventListener(){[native code]}”只是想知道为什么要这样做?