Questions tagged «javascript»

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

6
在不了解Javascript的情况下使用Coffeescript有多危险?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 4年前关闭。 我是一位经验丰富的程序员,致力于学习Web开发。我正在尝试开发一个使用svg或canvas作为图形的客户端Web应用程序。我已经决定要用Coffeescript编写应用程序代码。我不知道Javascript或Coffeescript。 了解Javascript对Coffeescript Web开发有何必要?我是否可能遇到一些麻烦的问题,需要我了解Javascript?我可以愉快地使用Coffeescript中的Javascript API吗? 编辑:我可以轻松地在一周内学习Javascript的基础知识。我更担心Javascript似乎有很多隐藏的尖锐边缘。在StackOverflow上最奇怪的语言功能问题中,Javascript是最常见的语言之一。它具有不同寻常的对象和类模型。它具有非显而易见的名称范围规则。我发现我真的需要一种语言才能花费一周以上的时间。 我将进行一个简单的小项目来学习Web开发。使用Javascript或Coffeescript会更好吗?我认为从长远来看,我会更喜欢Coffeescript,但是如果我需要对Javascript进行透彻了解才能使用Coffeescript,那么我愿意从Javascript开始。

5
为什么扩展DOM /内置对象原型是一个坏主意?
我正在寻找一个明确的答案,以说明为什么扩展内置原型在JS开发人员社区中受到如此严重的抨击。我使用Prototype JS框架已有一段时间了,对我来说[1,2,3].each(doStuff)似乎比做的要优雅得多$.each([1,2,3], doStuff)。我知道它会造成“名称空间污染”,但我仍然不明白为什么将其视为一件坏事。扩展内置原型是否还会导致实际性能下降?谢谢!

5
JSON的XSLT等效项
我对寻找(或必要时开发)JSON的XSLT等效项感兴趣。 由于没有发现任何内容,我正在考虑使用可能的查询语言来匹配JSON路径,以便在匹配时应用模板(来自JavaScript)(可能只是按顺序检查匹配模式的数组,然后在第一个匹配的模板,尽管允许使用xsl:apply-templates等效,以使模板适用于子级)。 我知道JSONPath,JSONQuery和RQL是JSON查询语言(尽管我还不太清楚RQL是否支持绝对路径和相对路径)。关于要考虑的因素和每种方法相对优势的任何建议。
15 javascript  json  xslt 


3
我无法跟踪我的PHP Web应用程序的流程,因此变得越来越难以使用
我已经编程了几年,并且随着时间的流逝对C#和JavaScript变得非常熟悉。我有一些较大的C#和JavaScript项目,可以轻松浏览。我最近开始了一个PHP&AngularJS项目,该项目以前没有使用PHP的经验。 PHP方面的流程变得越来越难以跟踪(JavaScript方面更大,但很容易实现),当我尝试通过它进行思考时,我想象一个纠结的线程。一开始我犯的主要设计错误就开始堆积起来,影响着我的设计。实施任何新技术都将花费越来越长的时间。 我的工作期限很紧,发现编写好的DRY SOLID代码变得越来越困难。随着设计时间的增加,复制/粘贴代码块以使其行为略有变化变得越来越具有吸引力。每当我必须进行上下文切换(从一个项目然后回到这个项目)时,也需要很长时间才能回到代码库,每当我回到该项目上工作时,我都会感到恐惧。 我可以采取什么步骤来解决这个问题?另外,还可能需要花费额外的时间来证明其合理性,因为我的老板不是开发人员,也不熟悉开发或软件的生命周期,因此解释起来可能比平时更为困难。

2
新闻网站,例如《福布斯》 / Zdnet如何无缝地将一个网页合并到另一个网页中?
如果您去例如: http://www.forbes.com/sites/adrianbridgwater/2015/06/12/why-technology-has-to-be-continuous/ 或 http://www.zdnet.com/article/if-you-want-those-cool-ios-9-features-its-time-to-buy-a-new-ipad/ 当您到达页面底部时,将加载新新闻故事,并且Internet浏览器中的URL会更改为该下一新闻故事的URL。所以我想知道一个网页如何几乎可以立即加载下一个网页,而页面之间的延迟几乎可以忽略不计。例如,他们是否预先下载了“下一则新闻”故事的网页,然后真正快速地加载了网页?



1
NodeJS如何实现“非阻塞”?
我正在学习NodeJS,只是想澄清一些东西。到目前为止,在几本入门教程和书籍中,它们很早就描述了Node的“非阻塞”体系结构-或者说有可能(并建议整个观点)以非阻塞方式进行编码。 因此,例如,在我正在阅读以异步方式从数据库获取数据的书中给出了此示例。 http.createServer(function (req, res) { database.getInformation(function (data) { res.writeHead(200); res.end(data); }); }); 据我所知,发生的事情是Node调用了数据库,然后继续处理调用堆栈中下一步可能发生的任何事情。数据库请求完成后,将填充匿名回调函数中的数据变量,并将该函数添加到调用堆栈中(并在Node到达该堆栈时执行)。 我的问题是,究竟在处理数据库请求是什么?当然,Node必须同时阻止吗?负责数据库请求的是什么?或者,如果Node在等待对外部资源的异步HTTP GET请求,那么该请求又在做什么呢?

5
在API设计中,何时使用/避免临时多态性?
Sue正在设计一个JavaScript库Magician.js。它的关键是Rabbit从传递的参数中拉出一个函数。 她知道它的用户可能想从a String,a Number,a Function甚至甚至是a中拔出一只兔子HTMLElement。考虑到这一点,她可以这样设计API: 严格的界面 Magician.pullRabbitOutOfString = function(str) //... Magician.pullRabbitOutOfHTMLElement = function(htmlEl) //... 上面示例中的每个函数都知道如何处理函数名称/参数名称中指定的类型的参数。 或者,她可以这样设计: “临时”界面 Magician.pullRabbit = function(anything) //... pullRabbit必须考虑该anything参数可能具有的各种不同的预期类型,以及(当然)意外类型: Magician.pullRabbit = function(anything) { if (anything === undefined) { return new Rabbit(); // out of thin air } else if (isString(anything)) { // more } else if (isNumber(anything)) …

4
在流利的API中使用自然语言语法
我正在修改基于WebSQL / Phonegap数据库API的查询抽象,我发现自己既对定义一种模仿自然英语语法使用的流畅API感兴趣,又对此表示怀疑。 通过示例解释这可能是最简单的。以下是我语法中所有有效的查询,并且注释说明了预期的语义: //find user where name equals "foo" or email starts with "foo@" find("user").where("name").equals("foo").and("email").startsWith("foo@") //find user where name equals "foo" or "bar" find("user").where("name").equals("foo").or("bar"); //find user where name equals "foo" or ends with "bar" find("user").where("name").equals("foo").or().endsWith("bar"); //find user where name equals or ends with "foo" find("user").where("name").equals().or().endsWith("foo"); //find user where name …
14 javascript  api 

1
使用JavaScript商标的法律后果?
众所周知,“ JavaScript”是Oracle的商标(以前是Sun的商标,以前是Netscape的商标)。 但是,使用JavaScript商标的其他人似乎没有问题。Google将其用于V8,Mozilla将其用于SpiderMonkey以及其他各种地方,等等。Mozilla是似乎唯一尝试将商标归其所有者(本页底部)的人。在本文中,它被错误地归因于Sun而不是Oracle。 长期以来,Microsoft使用“ JScript”作为其ECMAScript实现的名称,而不是“ JavaScript”,以免侵犯商标。最近(我不确定何时),Microsoft似乎已从“ JScript”名称切换为“ JavaScript”。 根据版本历史,我的理解是他们编写了一个新的ECMAScript实现并将其命名为“ JavaScript”,而将旧的命名为“ JScript”(而不是将“ JScript”重命名为“ JavaScript”)。 我的问题是:既然JavaScript是商标,那么在未经许可的情况下将其与产品或技术名称(例如“ Microsoft JavaScript”)结合使用是否侵权?如果是这样,我在哪里可以找到与Oracle / Sun / Netscape的协议记录,允许第三方使用该商标?我认为这些文件会在某个地方公开列出,但我不知道在哪里可以找到它们。最后,如果商标再次易手,先前达成的协议是否仍然有效,还是需要与当前商标持有者重新伪造? 我问的原因是因为我想知道是否可以在未经显式许可的情况下在产品标题(例如JavaScript库)中使用“ JavaScript”一词,以及是否需要提供免责声明以表明JavaScript是Oracle的商标。 。

6
我如何理解javascript框架的爆炸式增长?我应该全部学习吗?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 对于仍在以常规方式进行Web开发(服务器端为PHP / J2EE / Struts,客户端端为HTML / CSS / Javascript)的初学者Web开发人员,最近的Trello技术堆栈博客文章使我大失所望。 我不由得对本文中提到的新技术和框架列表感到不知所措,尤其是Javascript框架的普遍存在。 我的问题是,这是网络开发的未来吗?是否有任何文章,网站或资源可以帮助我理解这些新框架在现代Web应用程序中的适合位置?

4
什么是客户端JavaScript开发的良好IDE?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 我最近开始学习JavaScript,并且正在寻找一个好的JavaScript编辑器/ IDE。我在Google搜索中找到了数十个,但是如果有使用过这种IDE的经验的用户可以推荐一个,我将不胜感激。 我想要一个具有语法高亮显示功能的IDE ,可能需要IntelliSense以及对JavaScipt代码的调试支持。我是Windows 7用户,仅做客户端 JavaScript开发。 有什么建议么??

2
jQuery在哪里适合JavaScriptMVC,BackboneJS,SproutCore和Knockout等框架?
在过去的两年中,我一直很愉快地使用JQuery,并且一直非常成功地使用它创建了一些非常酷的功能...所以我对此非常满意。我还相信,网络的未来将继续沿用当前的客户端路径。 然而... 下一个挑战似乎是以各种控制器框架的形式出现的:KnockoutJS,BackboneJS,SproutCore,JavaScriptMVC(清单不胜枚举)。 Additonally,有一些伟大的AMD装载机工具,像使用RequireJS或LabJS等。但是,jQuery的现在已经define和then能力烤项。 跟踪所有信息变得越来越难了... 现在,我的任务似乎是评估/确定使用某种形式的MVC或MVVM框架客户端的战略方向...但是我有很多问题。 JQuery 在哪里适合上述各种控制器框架? 是将JQuery 与每个对象一起使用,还是其中一些包含自己的“ JQuery风格的版本”? 如果实现上述各种控制器框架之一,是否仍需要诸如RequireJS之类的 工具? 现在,加入JQuery的define和then功能是否可以取代上面提到的AMD Loader? 哪一个看起来最模块化?(请参阅下面的注释) 注意: 在任何将来的框架中,我都不需要的一件事是必须接受大量我不使用的功能。意思是说,我宁愿使用真正模块化的框架。例如,要使用jQuery UI,您必须引入许多您可能未实际使用的其他核心库。 我将对每一个进行实验,但是一些真实的反馈会很棒。我已经看到了一些“类似”的问题,但是没有一个人能够真正回答上述问题。 提前致谢!

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.