Questions tagged «javascript»

JavaScript(不要与Java混淆)是一种高级,动态,多范式,弱类型的语言,用于客户端脚本和服务器端脚本。使用此标记可解决有关ECMAScript,JavaScript,JScript等的常见实现的问题。JS通常不引用其ECMA-表兄弟ActionScript。

2
我如何才能充分利用自己的编码技能?
到今年秋天,我的两个小型网站每月的最低/零投入应该总计约为1200美元,这足以让我过上舒适的生活。 我宁愿花几年的时间做一些真正好的事情,也可以帮助需要它的其他人,而不愿从事另一项业务。我想花4到5年的时间将自己的时间用于有价值的事业,并尽我所能来帮助我掌握已有的Web开发和编程技能。 问题是我不知道从哪里开始。我对自己的想法并不了解,并且对许多大型慈善机构表示怀疑。理想情况下,我想找到一个小型项目,每个人都没有薪水,专注于帮助。 有没有这么小的组织? 是否有人想出一个项目/网站/应用程序的想法,可以帮助有需要的人希望他们与我合作或与他们合作? 我知道这不是典型的StackOverflow 2 + 2 =?类型问题,有些人会很想删除它,但考虑到IT行业的慈善性质(仅看SO本身),这对于现在或在职业生涯中的许多开发人员来说都是非常相关的问题。考虑到日本最近发生的事件,这个问题与许多寻求与他人分享技能和时间来帮助他人的人特别相关。 真的很期待阅读您的想法/答案,谢谢大家
13 c#  java  php  javascript  jquery 

6
用于描述修改其调用对象的功能/方法的术语是什么?
对不起,通用问题。我到处搜索,发现了很多与此类似的线程,但是没有一个可以回答我的特定问题-也许是因为我要查找的术语甚至不存在。 我的一个朋友正在学习编程,特别是JavaScript,他问我为什么这样做不起作用: var a = "Hello World"; a.replace("Hello", "Goodbye"); console.log(a) // Logs "Hello World" 原因是因为replace不修改a,因为字符串在JavaSript中是不可变的。因为它返回一个字符串,所以您需要执行以下操作... var a = "Hello World"; a = a.replace("Hello", "Goodbye"); console.log(a); // Logs "Goodbye World" 但是,替代方法是类似JavaScript的函数reverse(),因为它会修改任何调用它的函数。例如: var fruits = ["Apples", "Oranges", "Bananas"]; fruits.reverse(); console.log(fruits) // ["Bananas", "Oranges", "Apples"] 当我的朋友问我为什么他replace不工作时,我意识到我在说一个我不知道的词(据我所知)... “您必须将字符串设置为“字符串点替换”,因为替换功能是________。” 您无需将数组设置为等于“数组点反向”,因为反向是________。 我不熟悉原型函数,但我不相信这是我要找的单词。谁能帮我填补这些空白?

6
大型JavaScript应用程序应该如何构造?
最近向我展示了一些为OBIEE Mobile App Developer编写的JavaScript插件,以及一些用于各种项目的自定义库。 来自OOP的背景,我对这些项目的结构有些困惑。我看到的文件长数千行。我习惯将事物分解为文件和类,但是我知道这是一个不同的框架 -例如,文件大小是一个问题-但是必须有更好的方法来完成所有这些工作吗? 脚本的长度不仅影响可读性和可维护性,而且还会影响一个人对该程序的工作原理的一般理解。 大型应用程序的结构如何?是否有任何通用的OOP设计模式?

1
当他们说“不要复制并粘贴此代码”时,Google在这里意味着什么?
以下是Google recaptcha API(https://www.google.com/recaptcha/api.js)中的代码摘录: /* PLEASE DO NOT COPY AND PASTE THIS CODE. */ (function() { if (!window['___grecaptcha_cfg']) { window['___grecaptcha_cfg'] = {}; }; if (!window['___grecaptcha_cfg']['render']) { window['___grecaptcha_cfg']['render'] = 'onload'; }; window['__google_recaptcha_client'] = true; var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://www.gstatic.com/recaptcha/api2/r20160314182818/recaptcha__it.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, …

3
单元测试比赛
我的雇主每月举行一次单元测试日比赛。一整天专门用于编写单元测试-显然,我们每个月都要进行更多测试,但这是一整天-竞赛的“优胜者”将获得奖励。但是,我们发现很难确定谁是赢家。 我们为每个测试用例分配点。因此,如果您编写了这样的单元测试... for (int i = 0; i < 100; i++) { assertTrue(i*i, square(i)); } 您将获得100分。显然,这是一个简单的示例,但是它演示了为每个测试用例分配“点”的问题。 我们主要是一家Java&Javascript商店。因此,我建议将经过测试的代码分支数量作为度量标准。我们可以轻松地通过代码覆盖率工具(例如EclEmma)来计算测试的分支。但是,不确定如何通过Selenium测试以及如何在Javascript源代码覆盖方面做到这一点(有什么想法吗?) 有谁对我们如何更好地确定本次比赛的获胜者有任何建议? 编辑 我知道如何编写单元测试,我知道如何编写有效的单元测试,不需要帮助确定要测试的内容。我无法控制这场比赛-比赛将继续进行。因此,我要么添加一些输入以使其更好,要么继续进行测试游戏(是的,我进行游戏。当然,我进行游戏。有奖品可以赢得) 编辑 这个问题在这里显然是不重复的,但它包含有关如何找到好的测试用例有用的信息,它没有提供任何有用的指标来评估的竞争。

4
有比一系列“ AssertEquals”更好的编写单元测试的方法吗?
这是使用qunit进行单元测试的基本示例: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> <link rel="stylesheet" href="qunit/qunit-1.13.0.css"> <script src = "qunit/qunit-1.13.0.js"></script> <script src = "../js/fuzzQuery.js"></script> <script> test("Fuzz Query Basics", function() { equal(fuzzQuery("name:(John Smith)"), "name:(John~ Smith~)"); equal(fuzzQuery("name:Jon~0.1"), "name:Jon~0.1"); equal(fuzzQuery("Jon"), "Jon~"); //etc } ); </script> </head> <body> <div …


2
函数式反应式编程-Fay的表达能力够吗?
因此,我正在做一个相当参与的javascript / html客户端,其中包含许多ajax调用和其他涉及回调机制的事情。我很高兴为此目的使用Fay。我知道榆树。尝试了一下,喜欢FRP元素。现在,我想知道在Fay中是否可能有类似的结构。 此时,Fay中是否有FRP的具体示例? 一些相关技术: 箭,JavaScript中的箭状玻璃钢 FlapJax,另一个javascript替代方案 Bacon.js,javascript中的FRP 一种可能的解决方案,使用培根。带演示。

4
“组合”的Getter / Setter VS个体方法的优点是什么?
这就是我所谓的“组合式” getter / setter方法(来自jQuery): var foo = $("<div>This is my HTML</div>"), myText; myText = foo.text(); // myHTML now equals "This is my HTML" (Getter) foo.text("This is a new value"); // The text now equals "This is a new value") 这与单独(理论)方法的逻辑相同: var foo = $("<div>This is my HTML</div>"), myText; myText = …

2
使用起点,距离和角度查找新坐标
好吧,说我有一个点坐标。 var coordinate = { x: 10, y: 20 }; 现在我也有距离和角度。 var distance = 20; var angle = 72; 我要解决的问题是,如果我想从起始坐标沿角度方向移动20个点,如何找到新坐标? 我知道答案涉及正弦/余弦之类的东西,因为我以前知道如何做到这一点,但此后我就忘记了公式。有人可以帮忙吗?

2
Webkit作为.Net / Mono中的GUI
我想制作一个跨平台应用程序,该应用程序还将有一个网站,桌面应用程序(Windows,iOS,Linux)将与服务器进行对话,并使用户数据保持同步。 到目前为止,我看到的选择是: 为这三个操作系统中的每一个编写一个本机GUI,所以我将拥有3个GUI代码库(和一个后端系统) 使用类似GTK的工具,这样我就可以在所有提及的平台上使用一个受支持的系统。 但是我无法找到更多信息的第三个窗口(可能是因为我对C#和.Net还是陌生的,所以我没有搜索正确的术语)是要有一个内置了嵌入式WebKit实例的窗口,这将允许我使用与网站相同的GUI系统。这将使客户端应用程序和网站看起来彼此尽可能接近,从而使用户熟悉该界面。 WebKit的最后一个选项是否合理?我已经非常了解JavaScript / HTML,并且如果我可以使用该知识来创建界面,那将很棒。这也是允许用户使用插件自定义界面的好方法,并且他们可以使从本地到Web的任何UI首选项保持同步。
12 c#  .net  javascript  gui  mono 

3
错误或错误作为第一个参数的不同回调?
几天前,我们(和JS SO聊天室)与@rlemon讨论了他的Little-XHR库有关错误处理的问题。 基本上,我们想确定应该使用哪种错误处理模式: xhr.get({ // Some parameters, and then success: function(data) {}, failure: function(data) {} }) 要么: xhr.get({ // Some parameters, and then callback: function(err, data) {} }) 一个更像jQuery,而另一个更像Node。有人说第一种模式使您更多地考虑处理错误。我认为相反,因为您可能会忘记其他回调函数,而参数始终位于第二个模式中。 关于这两种模式有什么意见/优势/缺点吗?

6
JavaScript命名约定
我来自Java,对JavaScript还是陌生的。我注意到许多使用单个字符参数名称的JavaScript方法,例如以下示例。 doSomething(a,b,c) 我不喜欢它,但是一位JavaScript开发人员说服我这样做是为了减小文件大小,并指出必须将JavaScript文件传输到浏览器。 然后我发现自己正在与另一位开发人员交谈。他向我展示了Firefox将截断变量名以更快地加载页面的方式。这是Web浏览器的标准做法吗? 使用JavaScript编程时应遵循的最佳实践命名转换是什么?标识符长度重要吗?如果有,程度如何?

3
为什么我们要删除全局对象的某些内置属性?
我最近正在阅读es5,发现在全局对象的某些内置属性中的[[configurable]]属性设置为true,这意味着我们可以删除这些属性。 例如: Array.prototype对象的join方法具有属性 {[[Writable]]:true, [[Enumerable]]: false, [[Configurable]]: true} 因此,我们可以轻松删除Array的join方法,例如: delete Array.prototype.join; alert([1,2,3].join); 警报将显示 undefined在我的铬17,Firefox 9(即10,甚至ie6)中; 在Chrome 15和safari 5.1.1中,[[configurable]]属性设置为true,删除结果也为true,但最终结果仍为 function(){[native code]}。似乎这是一个错误,而铬修复了它。 我以前没注意到。我认为删除用户代码中的内置函数很危险,并且在与其他人一起工作时会带来很多错误。那么为什么ECMAScript会做出这个决定?
12 javascript 

3
用Javascript应该测试什么?
在工作中,我们刚刚开始使用基于Javascript的大量应用程序(实际上仍在使用Coffeescript,但仍在使用),我一直在使用JsTestDriver和fabric来实现自动化测试系统。 我们从来没有用这么多的Javascript编写任何东西,所以到目前为止,我们从未进行过任何Javascript测试。我不确定在单元测试中到底应该测试什么。我们已经为各种事物编写了JQuery插件,因此很明显,应该使用JsTestDriver尽可能多地验证它们的正确性,但是我们团队中的其他所有人似乎都认为我们也应该测试页面级Javascript。 我认为我们不应该将页面级Javascript作为单元测试进行测试,而应该使用Selenium之类的系统来验证一切是否按预期进行。我这样做的主要理由是,目前确保页面级Javascript测试通过JsTestDriver失败,因为它们正在尝试访问DOM上可能不存在的元素。 那么,应该使用Javascript对哪些内容进行单元测试?

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.