Tag: JavaScript

var关键字的用途是什么以及何时使用(或省略)?

注意 :这个问题是从ECMAScript版本3或5的angular度提出的。在ECMAScript 6版本中引入新function可能会使答案过时。 Javascript中var关键字的function究竟是什么,以及它们之间有什么区别: var someNumber = 2; var someFunction = function() { doSomething; } var someObject = { } var someObject.someProperty = 5; 和: someNumber = 2; someFunction = function() { doSomething; } someObject = { } someObject.someProperty = 5; 你什么时候可以使用一个,为什么?它有什么作用?

在JavaScript中按string属性值sorting对象数组

我有一个JavaScript对象的数组: var objs = [ { first_nom: 'Lazslo', last_nom: 'Jamf' }, { first_nom: 'Pig', last_nom: 'Bodine' }, { first_nom: 'Pirate', last_nom: 'Prentice' } ]; 我怎样才能sorting他们在JavaScript的last_nom的价值? 我知道sort(a,b) ,但似乎只能用于string和数字。 我需要添加一个toString方法到我的对象?

如何循环或枚举JavaScript对象?

我有一个JavaScript对象,如下所示: var p = { "p1": "value1", "p2": "value2", "p3": "value3" }; 现在我想遍历所有p元素( p1 , p2 , p3 …)并获得它们的键和值。 我怎样才能做到这一点? 如有必要,我可以修改JavaScript对象。 我的最终目标是循环通过一些关键值对,如果可能的话,我想避免使用eval 。

在使用jQuery之后select和操作CSS伪元素,如:: before和::

有没有办法使用jQueryselect/操作CSS伪元素,如::before和::after (以及带有一个分号的旧版本)? 例如,我的样式表有以下规则: .span::after{ content:'foo' } 我如何使用jQuery将“foo”更改为“bar”?

在jQuery中检测移动设备的最佳方法是什么?

有没有一个可靠的方法来检测用户是否在jQuery中使用移动设备? 类似于CSS @media属性的东西? 如果浏览器位于手持设备上,我想运行其他脚本。 jQuery $.browser函数不是我正在寻找的。

如何处理JavaScript中的浮点数精度?

我有以下虚拟testing脚本: function test(){ var x = 0.1 * 0.2; document.write(x); } test(); 这将打印结果0.020000000000000004而它应该只打印0.02 (如果您使用您的计算器)。 据我了解这是由于浮点乘法精度的错误。 有没有人有一个很好的解决scheme,以便在这种情况下,我得到正确的结果0.02 ? 我知道有这样的function,如固定或四舍五入是另一种可能性,但我希望的是真正打印完整的数字,没有任何切割和舍入。 只是想知道你们中的一个是否有一些漂亮,优雅的解决scheme。 当然,否则我会轮到10个左右的数字。

如何检测元素外的点击?

我有一些HTML菜单,当用户点击这些菜单的头部时,我完全显示了这些菜单。 我想在用户点击菜单区域之外时隐藏这些元素。 是这样的jQuery可能吗? $("#menuscontainer").clickOutsideThisElement(function() { // Hide the menus });

如何从asynchronouscallback函数返回值?

这个问题在SO中被多次提出。 但是我仍然无法得到东西。 我想从callback中获得一些价值。 看看下面的脚本澄清。 function foo(address){ // google map stuff geocoder.geocode( { 'address': address}, function(results, status) { results[0].geometry.location; // I want to return this value }) } foo(); //result should be results[0].geometry.location; value 如果我尝试返回该值只是“未定义”。 我跟从了一些想法,但仍然失败。 那些是: function foo(address){ var returnvalue; geocoder.geocode( { 'address': address}, function(results, status) { returnvalue = results[0].geometry.location; }) return returnvalue; } foo(); […]

修改url而不重新加载页面

有什么办法可以修改当前页面的url,而无需重新加载页面? 如果可能,我想访问#哈希之前的部分。 我只需要改变域名后的部分,所以它不像我违反跨域政策。 window.location.href = "www.mysite.com/page2.php"; // sadly this reloads

用JavaScript比较两个date

有人可以build议一种方法来比较两个date的值大于,小于,而不是在过去使用JavaScript? 这些值将来自文本框…