Questions tagged «javascript»

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

13
将JSON字符串解析为JavaScript中的特定对象原型
我知道如何解析JSON字符串并将其转换为JavaScript对象。您可以JSON.parse()在现代浏览器(和IE9 +)中使用。 太好了,但是我怎样才能把那个JavaScript对象变成一个特定的 JavaScript对象(即具有特定的原型)呢? 例如,假设您有: function Foo() { this.a = 3; this.b = 2; this.test = function() {return this.a*this.b;}; } var fooObj = new Foo(); alert(fooObj.test() ); //Prints 6 var fooJSON = JSON.parse({"a":4, "b": 3}); //Something to convert fooJSON into a Foo Object //....... (this is what I am missing) …


10
谷歌浏览器扩展程序:: console.log()来自后台页面?
如果我console.log('something');从弹出页面调用,或者包含的任何脚本都可以正常工作。 但是,由于后台页面不是直接在弹出页面上运行的,因此它不包含在控制台中。 有没有一种方法可以使我console.log()在后台页面中显示在弹出页面的控制台中? 有什么方法可以从后台页面在弹出页面中调用函数?

8
最低有效JSON是多少?
我已经仔细阅读了JSON描述http://json.org/,但是我不确定我是否知道简单问题的答案。最小可能的有效JSON是什么字符串? "string" 字符串是有效的JSON吗? 42 简单数字是有效的JSON吗? true 布尔值是有效的JSON吗? {} 空对象是有效的JSON吗? [] 空数组是有效的JSON吗?

16
window.close和self.close不会在Chrome中关闭窗口
问题是当我调用它window.close()或self.close()它没有关闭窗口时。现在似乎有人相信,在Chrome中,您无法通过脚本关闭任何非脚本创建的窗口。这显然是错误的,但是即使它需要弹出一个警报进行确认,也不管它应该仍然这样做。这些都没有发生。 那么,有没有人有真正,实用且可靠的方法来关闭窗口,例如使用javascript:window.close()或javascript:self.close()确实达到预期效果,并且在所有不基于Chrome的浏览器中都能正常运行?任何建议将不胜感激,我正在寻找Javascript特定的解决方案,没有JQuery或第三方实现。 更新:尽管很多建议都存在严重的局限性和可用性问题,但// @grant window.close即使在通常无法处理close方法的选项卡上,脚本标头中使用的最新建议(特定于TamperMonkey)也常常可以解决问题。尽管这并非完全理想,并且无法针对每种情况进行概括,但对于我而言,这是一个很好的解决方案。

9
取消选择期间未触发jQuery $(“#radioButton”)。change(...)
大约一个月前,米特的问题没有得到解答。可悲的是,我现在遇到了同样的情况。 http://api.jquery.com/change/#comment-133939395 情况如下:我使用jQuery捕获单选按钮中的更改。选择单选按钮后,我将启用一个编辑框。当取消选择单选按钮时,我希望禁用编辑框。 使能的作品。当我在组中选择其他单选按钮时,不会触发该change事件。有谁知道如何解决这一问题? <input type="radio" id="r1" name="someRadioGroup"/> <script type="text/javascript"> $("#r1").change(function () { if ($("#r1").attr("checked")) { $('#r1edit:input').removeAttr('disabled'); } else { $('#r1edit:input').attr('disabled', true); } }); </script>


7
Javascript:自然的字母数字字符串
我正在寻找一种对包含数字和文本以及它们的组合的数组进行排序的最简单方法。 例如 '123asd' '19asd' '12345asd' 'asd123' 'asd12' 变成 '19asd' '123asd' '12345asd' 'asd12' 'asd123' 这将与我在这里提出的另一个问题的解决方案结合使用。 排序功能本身可以工作,我需要的功能是可以说'19asd'小于'123asd'。 我用JavaScript编写。 编辑:正如adormitu指出的,我正在寻找的是用于自然排序的函数


4
如何单独捆绑供应商脚本,并根据需要使用Webpack?
我正在尝试做一些我认为应该可行的事情,但是我真的不能仅仅从webpack文档中了解如何做到这一点。 我正在编写一个JavaScript库,其中包含几个可能相互依赖的模块。最重要的是,所有模块都使用jQuery,其中一些可能需要jQuery插件。然后,该库将在可能需要某些或所有模块的几个不同的网站上使用。 定义模块之间的依赖关系非常容易,但是定义它们的第三方依赖关系似乎比我预期的要难。 我想实现的目标是:对于每个应用程序,我都希望有两个捆绑文件,一个具有必要的第三方依赖关系,另一个具有我库中的必要模块。 示例:假设我的库具有以下模块: a(需要:jquery,jquery.plugin1) b(要求:jquery,a) c(要求:jquery,jquery.ui,a,b) d(要求:jquery,jquery.plugin2,a) 我有一个需要模块a,b和c的应用程序(将其视为唯一的条目文件)。这种情况下的Webpack应生成以下文件: 供应商捆绑包:带有jquery,jquery.plugin1和jquery.ui; 网站捆绑:带有模块a,b和c; 最后,我希望将jQuery作为全局变量,所以我不需要在每个文件上都需要它(例如,我可以只在主文件上需要它)。jQuery插件只会在需要时扩展$全局(如果不需要其他模块的其他模块可以使用它们,这不是问题)。 假设有可能,这种情况下的webpack配置文件示例是什么?我在配置文件上尝试了几种加载程序,外部程序和插件的组合,但是我并没有真正了解它们在做什么以及应该使用哪个。谢谢!


12
如何使用JavaScript检测是否同时按下了多个键?
我正在尝试开发JavaScript游戏引擎,但遇到了这个问题: 当我按下时SPACE,角色跳跃。 当我按下时→,角色向右移动。 问题是当我向右按然后按空格键时,角色会跳跃然后停止移动。 我使用该keydown功能来按下键。如何检查是否同时按下多个键?

10
打字稿中的ES6地图
我正在打字稿中创建一个具有如下属性的类,该类是ES6(ECMAscript 2016)地图: class Item { configs: ????; constructor () { this.configs = new Map(); } } 如何在打字稿中声明ES6 Map类型?

13
Node.js本机Promise.all是并行还是顺序处理?
我想澄清这一点,因为文档对此不太清楚。 问题1:是Promise.all(iterable)按顺序还是并行处理所有承诺?或者,更具体地说,它相当于运行像 p1.then(p2).then(p3).then(p4).then(p5).... 或者是一些其他类型的算法的所有p1,p2,p3,p4,p5,等是被称为在同一时间(并行)和结果尽快返回所有的决心(或一个不合格品)? 问题2:如果Promise.all并行运行,是否有方便的方法可以依次运行可迭代程序? 注意:我不想使用Q或Bluebird,而是要使用所有本机ES6规范。


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.