Tag: JavaScript

在JavaScript中,窗口,屏幕和文档有什么区别?

我将这些术语互换为DOM的全球环境。 有什么区别(如果有的话),我应该什么时候使用每一个?

使用jquery列出在页面上连线的所有javascript事件

使用jQuery,是否有可能获得所有事件的列表以及事件绑定到哪个元素?

为什么JavaScript中有一个`null`值?

在JavaScript中,有两个基本上说'我不存在'的值 – undefined和null 。 程序员没有分配任何东西的属性将是undefined ,但为了使属性变为null ,必须明确地将null分配给它。 我曾经认为需要null因为undefined是一个原始值, null是一个对象。 它不是,即使typeof null会产生'object' :实际上,它们都是原始值 – 这意味着既没有undefined也没有null可以从构造函数返回,因为两者都将被转换为空对象(必须抛出一个错误宣布build设者失败)。 他们在布尔上下文中都评估为false 。 我能想到的唯一真正的区别是,在数值上下文中,一个评估为NaN ,另一个评估为0 。 那么,为什么会有这两个undefined和null如果这只是混淆了程序员谁试图找出一个属性是否已经设置或不正确检查null ? 编辑:我想知道的是,如果任何人有一个合理的例子,有必要使用null不能用undefined来表示。 edit2 + 3 :所以普遍的共识似乎是undefined意思是“没有这样的属性”,而null表示“属性确实存在,但没有任何价值”。 如果JavaScript实现能够实际执行此行为,我可以忍受这一点 – 但是undefined是一个完全有效的原始值,因此可以轻松地将其分配给现有属性来破坏此合同。 因此,如果你想确定一个属性是否存在,你必须使用in运算符或hasOwnProperty() 。 所以再次说明: undefined和null单独值的实际用法是什么? 我实际上使用undefined当我想取消不再使用的属性的值,但我不想delete 。 我应该使用null而不是?

什么是“顶级JSON数组”,为什么他们是安全风险?

在下面的video中,在时间标记21:40,微软PDC发言人说,重要的是所有的JSON被包装,所以它不是一个顶级的数组: https://channel9.msdn.com/Events/PDC/PDC09/FT12 展开顶层数组的风险是什么? 我应该如何检查,看看我是否脆弱? 我从第三方购买了许多组件,并有外部供应商开发我的代码。

XMLHttpRequest中的不同readystates是什么意思,我该如何使用它们?

XMLHttpRequest有5个readyState ,我只使用其中的1个(最后一个4 )。 其他人可以使用哪些实际应用程序?

在Angular 2中,你如何确定主动路线?

注意: 这里有很多不同的答案,而且大多数都是有效的。 事实上,Angular 2团队已经改变了路由器,有些改变了很多次。 最终成为Angular 2中的路由器的路由器3.0版本打破了许多这些解决scheme,但提供了一个非常简单的解决scheme。 从RC.3开始,首选解决scheme是使用[routerLinkActive] , 如此答案中所示。 在Angular 2应用程序(2.0.0-beta.0发行版中的当前版本)中,如何确定当前活动的路由是什么? 我正在使用Bootstrap 4的一个应用程序,我需要一种方式来标记导航链接/button,当它们的关联组件被显示在一个<router-output>标签。 我意识到,当点击其中一个button时,我可以自己保持状态,但是这不会涵盖多个path进入相同path的情况(例如主要导航菜单以及主要组件中的本地菜单)。 任何build议或链接,将不胜感激。 谢谢。

stopPropagation与stopImmediatePropagation

event.stopPropagation()和event.stopImmediatePropagation()什么区别?

在JavaScript中计算页面加载时间

我正在尝试创build一个网页,当它开始加载时,使用Interval来启动计时器。 当页面完全加载时,它停止计时器, 但99%的时间我得到0.00或0.01的时间测量,即使需要更长的时间。 有时候,它会说某些事情在某些时候更像.28或3.10。 这里是代码,如果有帮助: var hundredthstimer = 0; var secondplace = 0; function addinc(){ hundredthstimer += 1; if (inctimer == 100){ hundredthstimer = 0; secondplace += 1; } } var clockint = setInterval(addinc, 10); function init(){ var bconv1 = document.getElementById("bconverter1"); var bconv2 = document.getElementById("bconverter2"); $(bconv2).hide(); clearInterval(clockint); if (inctimer.len !== 2){ inctimer = "0" + […]

Google地图API API自动完成 – 在input时select第一个选项

根据http://code.google.com/intl/sk-SK/apis/maps/documentation/javascript/places.html#places_autocomplete,我已成功在自己的input框中实现了Google地图位置V3自动完成function。 它很好地工作,但我很想知道如何使用户按下input时,从build议中select第一个选项。 我想我会需要一些JS的魔力,但我是非常新的JS,不知道从哪里开始。 提前致谢!

如何在PHP中创buildwebsockets服务器

是否有任何教程或指南显示如何在PHP中编写简单的websockets服务器? 我试图在谷歌上寻找它,但我没有find很多。 我发现phpwebsockets,但现在已经过时,不支持最新的协议。 我试图自己更新它,但似乎并没有工作。 #!/php -q <?php /* >php -q server.php */ error_reporting(E_ALL); set_time_limit(0); ob_implicit_flush(); $master = WebSocket("localhost",12345); $sockets = array($master); $users = array(); $debug = false; while(true){ $changed = $sockets; socket_select($changed,$write=NULL,$except=NULL,NULL); foreach($changed as $socket){ if($socket==$master){ $client=socket_accept($master); if($client<0){ console("socket_accept() failed"); continue; } else{ connect($client); } } else{ $bytes = @socket_recv($socket,$buffer,2048,0); if($bytes==0){ disconnect($socket); } else{ $user […]