我试图将JS对象转换为JSON.
JSON.stringify({a:1, toJSON: function(){}})
Run Code Online (Sandbox Code Playgroud)
原生JSON stringify未按预期工作.JSON stringify在JS对象内部执行toJSON函数.我已经覆盖了如下的本机代码,
// Adding try catch for non JSON support browsers.
try{
_jsonStringify = JSON.stringify;
JSON.stringify = function(object){
var fnCopy = object.toJSON;
object.toJSON = undefined;
var result = _jsonStringify(object);
object.toJSON = fnCopy;
return result;
};
}catch(e){}
Run Code Online (Sandbox Code Playgroud)
它工作正常.有没有其他更好的方法来做到这一点?在本机代码中是否有任何特定原因在输入对象中执行toJSON函数?
我写的代码如下,
function Myfunction(){
Myfunction.myvar = "somevar";
}
Run Code Online (Sandbox Code Playgroud)
执行该功能后,我可以访问 Myfunction.myvar
它是如何工作的?如果我这样做,隐藏在这里的问题是什么?
如果有任何问题,请解释其背景.
问题不是解决方案,更好地了解系统的问题
专家!我知道每当你将javascript代码提供给javascript引擎时,它将立即通过javascript引擎执行.既然,我还没有看过Engine的源代码,我的问题如下,
我们假设我从远程服务器加载了几个文件,即FILE_1.js和FILE_2.js.并且FILE_2.js中的代码需要FILE_1.js中的一些代码.所以我已经包含如下文件,
<script type="text/javascript" src="FILE_1.js" ></script>
<script type="text/javascript" src="FILE_2.js" ></script>
Run Code Online (Sandbox Code Playgroud)
所以希望,我已经完成了Javascript引擎所需的工作.不幸的是,我在FILE_1.js中编写了5000KB的代码,但是我在FILE_2.js中有5KB的代码.由于服务器是多线程的,因此在FILE_1.js完成之前,FILE_2.js将被加载到我的浏览器中.
javascript引擎如何处理这个?
如果将代码从FILE_2.js移动到内联脚本标记,如下所示,javascript引擎管理此依赖项的操作是什么?
<script type="text/javascript" src="FILE_1.js" ></script>
<script type="text/javascript" >
// Dependent code goes here
</script>
Run Code Online (Sandbox Code Playgroud)
注意:我不期待单个单词回答Single Threaded.我只想知道谁管理发布请求浏览器或javascript引擎或普通人?如果请求/响应是由普通人处理的,那么javascript引擎如何知道这一点?
我想在NodeJS中构建一个高可用性和高性能的视频文件服务器和流视频.基本上,我想知道:
请告诉我如何走上正确的道路.