草庐IT

线程安全——Synchronized

全部标签

javascript - 我不完全理解 JavaScript 线程

在我深入探讨这个问题之前。让我声明,通过事件循环,我指的是http://en.wikipedia.org/wiki/Event_loop.这是浏览器实现的东西。有关更多信息,请阅读:http://javascript.info/tutorial/further-javascript-features/events-and-timing-depth.这个问题又难又长,所以,请耐心等待!我非常感谢所有的回答!所以。现在,据我了解,在JavaScript中只有一个主线程(在大多数浏览器环境中)。所以,代码如下:for(varcolor=0x000;color会产生一个从黑到白的动画,但是你看

javascript - 执行以下操作是否 100% 安全?

执行以下操作是否100%安全?varuntrusted_input_from_3rd_party='alert("xss")';document.getElementsByTagName('body')[0].appendChild(document.createTextNode(untrusted_input_from_3rd_party));考虑到第三方可以输入任何东西(HTML、CSS等),如果我通过createTextNode传递然后添加到主场? 最佳答案 这是防止XSS的好方法。通过createTextNode进行的DOM

javascript - javascript eval 真的有那么大的安全威胁吗?

这个问题在这里已经有了答案:WhyisusingtheJavaScriptevalfunctionabadidea?(25个答案)关闭9年前。假设没有可用于修改某人计算机的浏览器端安全漏洞,我不明白使用eval会如何导致任何真正的威胁。谁能解释一下这是怎么可能的。有人可以在用户的​​计算机上显示某些内容,但如果不进行重定向或接受下载,就不会造成真正的伤害。不会造成服务器端损坏,对吧?

javascript - Backbone Marionette 和 RequireJS 模块混淆——模块似乎未定义

我刚开始使用Marionette,我正在阅读并关注Marionette-AGentleIntroduction通过DavidSulc.这是一本非常好的读物,很容易理解如何使用companionrepository构建示例应用程序ContactManager.但是,我之前已经使用RequireJS建立了一个项目,想将那本书的思想和概念转化并整合到这个项目中。我实际上还没有走那么远,我想我可能对Marionette模块与AMD模块的结合使用有点困惑,这导致了undefined对象。更具体地说,让我列出app.js,listView.js和listController.js这应该是这个com

javascript - 获取任何 JavaScript 值或对象的字符串表示的安全方法

我想在JavaScript中获取任何对象或值的字符串表示形式。我做了几个实验。>vara=document.createTextNode('foo');a"foo">vara=document.createTextNode('foo');a.toString()"[objectText]">vara=1;a.toString()"1">(1).toString()"1">1.toString()SyntaxError:UnexpectedtokenILLEGAL我有以下问题:为什么1.toString()会失败?以下函数是否会返回每个可能的JavaScript对象、值或文字的字符串表示

javascript - "new DOMParser.parseFromString"能比 "createElement"更安全吗?

我创建了一个脚本来尝试删除不安全的内容(我将它用于浏览器扩展):varstr="Hellomundo";CreateDOM(str);functionRemoveAttrs(target){varattrs=target.attributes,currentAttr;varvalidAttrs=["href","class","id","target"];for(vari=attrs.length-1;i>=0;i--){currentAttr=attrs[i].name;if(attrs[i].specified&&validAttrs.indexOf(currentAttr)===

javascript - Jquery——一键提交所有表单

HTML:...Continuej查询:$(document).ready(function(){$("#allsubmit").click(function(){$('.allforms').submit();});});我的html代码中有3个表单,如上所示。我的按钮不在我的表格中。如何为我的所有表单设置一个提交按钮。我尝试了点击功能,但它不起作用。为什么? 最佳答案 表单提交是一个同步操作,因此当您提交一个表单然后立即在您的页面中提交另一个表单时,第一个表单的提交将被取消。您可以做的是确保表单是异步提交的(使用ajax):$(

javascript - javascript 游戏中的 ajax 安全性

在我的JavaScript游戏(使用jQuery制作)中,我将玩家位置存储在数据库中。当Angular色移动时,我只是向特定的URL,即I.E.发送请求。mysite.com/map/x1/y3(其中字符的位置为x=1,y=3)。该url将坐标发送到数据库并检查是否有其他玩家在我们附近。如果是,它还会发送带有该玩家名称和坐标的JSON对象。这是我的问题-如何保护它?有些人可以查看我的JavaScript代码并准备类似于mysite.com/map/x100/y234的url,它会将他“传送”到map的另一侧。 最佳答案 在浏览器中用

javascript - 可以解读这段javascript。有人通过 facebook 发给我,要我复制到我的地址栏——我没有

DONOTUSETHIS!javascript:(function(){a='app107489592636080_KxqAxK';b='app107489592636080_bGBstB';gASjYp='app107489592636080_gASjYp';kyFYLC='app107489592636080_kyFYLC';NGqzYj='app107489592636080_NGqzYj';eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};

javascript - 安全地推送到数组,如何?忧不忧?

我认为这可能是一个幼稚的问题。我经常发现我有多个等待返回的xhr请求。我跟踪我在javascript数组中发出的请求。也就是说,当发出新请求时,我将其添加到数组中,然后在线程完成时将其从数组中删除。在多线程操作系统中,我会担心线程交叉,但我知道javascript是单线程的。我应该担心数组是否一致吗?很抱歉,如果有人询问并回答了这个问题。我查看并没有找到有关阵列安全推送的链接。 最佳答案 不,您不必担心。正如您所说,JavaScript是单线程的。 关于javascript-安全地推送到