Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。

30
如何强制浏览器重新加载缓存的CSS / JS文件?
我注意到一些浏览器(特别是Firefox和Opera)非常热衷于使用.css和.js文件的缓存副本,即使在浏览器会话之间也是如此。当您更新这些文件之一但用户的浏览器继续使用缓存的副本时,这会导致出现问题。 问题是:迫使用户的浏览器在文件更改后重新加载文件的最优雅的方法是什么? 理想情况下,该解决方案不会强制浏览器在每次访问页面时重新加载文件。我将发布自己的解决方案作为答案,但我很好奇是否有人有更好的解决方案,我将让您决定。 更新: 经过一段时间的讨论后,我发现John Millikin和da5id的建议很有用。事实证明有一个术语:自动版本化。 我在下面发布了一个新答案,该答案是我原来的解决方案和约翰的建议的结合。 SCdF建议的另一个想法是将伪查询字符串附加到文件中。(一些由pi提交的自动使用时间戳作为伪查询字符串的Python代码。)但是,关于浏览器是否将使用查询字符串缓存文件存在一些讨论。(请记住,我们希望浏览器缓存文件并在以后的访问中使用它。我们只希望它在更改后再次获取文件。) 由于尚不清楚假查询字符串会发生什么,因此我不接受该答案。


30
如何在JavaScript中比较数组?
我想比较两个数组...理想地,有效地比较。没有什么幻想,只要true它们是相同的,false如果不相同。毫不奇怪,比较运算符似乎不起作用。 var a1 = [1,2,3]; var a2 = [1,2,3]; console.log(a1==a2); // Returns false console.log(JSON.stringify(a1)==JSON.stringify(a2)); // Returns true 每个数组都可以进行JSON编码,但是有没有一种更快或更“更好”的方法来简单地比较数组而不必遍历每个值?
988 javascript  arrays  json 







15
如何在不创建新数组的情况下用另一个数组扩展现有的JavaScript数组
似乎没有办法用另一个数组扩展现有的JavaScript数组,即模拟Python的extend方法。 我要实现以下目标: >>> a = [1, 2] [1, 2] >>> b = [3, 4, 5] [3, 4, 5] >>> SOMETHING HERE >>> a [1, 2, 3, 4, 5] 我知道有一个a.concat(b)方法,但是它创建了一个新数组,而不是简单地扩展第一个数组。我想要一种有效的算法,该算法在a明显大于b(即不复制a)的情况下有效。 注意:这不是如何向数组添加内容的重复项?-这里的目标是将一个数组的全部内容添加到另一个数组中,并“就地”执行,即不复制扩展数组的所有元素。

21
获取触发事件的元素的ID
有什么方法可以获取触发事件的元素的ID? 我在想类似的东西: $(document).ready(function() { $("a").click(function() { var test = caller.id; alert(test.val()); }); }); <script type="text/javascript" src="starterkit/jquery.js"></script> <form class="item" id="aaa"> <input class="title"></input> </form> <form class="item" id="bbb"> <input class="title"></input> </form> 运行代码段隐藏结果展开摘要 当然,如果从第一种形式触发事件,则var test应该包含id "aaa";如果"bbb"从第二种形式触发事件,则var 应该包含id 。
969 javascript  jquery 

25
在Node.js中,如何从其他文件中“包含”函数?
假设我有一个名为app.js的文件。很简单: var express = require('express'); var app = express.createServer(); app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); app.get('/', function(req, res){ res.render('index', {locals: { title: 'NowJS + Express Example' }}); }); app.listen(8080); 如果我在“ tools.js”中有一个函数,该怎么办。如何导入它们以在apps.js中使用? 或者...我应该把“工具”变成一个模块,然后需要它吗?<<似乎很难,我宁愿对tools.js文件进行基本导入。




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.