Questions tagged «javascript»

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

6
为什么在MongoDB和CouchDB中使用Javascript而不是Java,C ++等其他语言?
我在SO上问了这个问题,但建议在这里尝试。因此,它去了: 到目前为止,我对Javascript的理解是,它是一种客户端语言,可以捕获事件并使网页动态化。 但是在阅读MongoDB和CouchDB之间的比较时,我注意到它们都使用Javascript。这使我想知道为什么选择JavaScript而不是其他常规语言的原因。 我想我想了解JavaScript的作用及其相对于其他语言的优势。 更新:我不是在问两个数据库支持的语言/驱动程序。比较表明: CouchDB和MongoDB都使用Javascript。CouchDB在视图的构建中广泛使用Javascript 。 MongoDB还支持在服务器端运行任意javascript函数,并将javascript用于map / reduce操作。 我缺乏理解是关于为什么在后端工作中完全使用Javascript。为什么首选在CouchDB中构建视图或使用map / reduce操作?为什么不使用C / C ++或Java?使用Javascript进行此类后端工作有什么优势?
19 java  javascript 

5
开发人员使用复杂JavaScript UI的方法
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 我试图了解围绕复杂的客户端JavaScript开发的不同方法和最佳实践的前景。 我不确定用什么来标记此类应用程序,也许是沉重的AJAX或RIA(但不能像Flash / Silverlight这样的插件)。我指的是具有以下特征的Web应用程序: 在JavaScript中模拟丰富/本地桌面UX 使用服务器作为数据API(JSON / Html-Templates),包含客户端JS中的大多数/所有行为。 这与使用Web服务器进行UI呈现相反,后者以页面刷新模型生成所有HTML。 一些例子是: Google文件/ Gmail 迈德迈斯特 关键跟踪器 随着我们逐步进入HTML5,我可以看到这种带有大量JavaScript的RIA开发风格变得越来越普遍和竞争所必需。 问题:那么,围绕这些大量的JS开发进行管理的通用方法是什么? 随着应用功能的增加,客户端代码非常复杂。使用原始JS在多个团队之间扩展开发工作时遇到了问题(或者,我听到了,并且完全可以相信)。 Google通过构建可从高级语言(Java)编译为JS的GWT来解决此问题,它依靠高级语言具有的现有开发基础结构(Eclipse,强类型,重构工具)以及抽象的浏览器兼容性和开发人员无法解决的其他问题。 还有其他工具,例如用于C#的Script#,其功能也类似。所有这些使JS更加具有IL(中间语言)的作用。即。“您再也不会真正用这种'低级语言'来写作了。” 但是,这种“编译为JS”并不是唯一的方法。尚不清楚GWT是占主导地位的方法...或确实会成为它。 人们在使用富客户端JavaScript做什么?一些定向问题: 大多数商店都在手工制作JS(在jQuery等类似的库上面)吗? 还是有许多不同的方法,没有明确的最佳实践? 大多数商店是否都在避免RIA规模开发,而转向更简单的开发人员服务器端/页面重绘模型?如果是这样,这会持续吗? 编译为JS可能是一种新兴的未来趋势吗?还是这是错误的方向? 他们如何管理客户端JS的复杂性和重构? 跨团队模块化和分配工作? 客户端模式(例如MVC / MVP等)的应用,实施和测试。 那么,在我们这个庞大的JavaScript和HTML5未来中,新兴趋势是什么? 谢谢!

6
有人使用过Sproutcore吗?
有没有人将Sproutcore用于Web应用程序?如果是这样,您能给我介绍您的经历吗?我目前正在考虑,但我有一些担忧。首先,文档是不好的/不完整的,而且恐怕我将花费大量时间来弄清事物或挖掘源代码。另外,我对使用一个相对较新的项目可能会有所犹豫。 感谢Sproutcore开发人员的任何想法! EDIT / PS:是的,我看过这篇文章:https : //stackoverflow.com/questions/370598/sproutcore-and-cappuccino。但是,我对某个用于重大项目的人对Sproutcore本身的描述加长了兴趣。
19 javascript 

4
Chrome V8如何运作?为什么JavaScript最初不是JIT编译的?
我一直在研究解释器/编译器,然后偶然发现了JIT-Compilation-特别是Google Chrome的V8 Javascript Engine。 我的问题是- 怎么会比标准口译更快呢? 为什么不首先使用JIT-Compilation? 我目前的理解 每个Javascript程序都从源代码开始,然后不管执行方法如何,最终都将其翻译为机器代码。 无论JIT编译和解释必须遵循这条道路,所以JIT编译怎么会有更快的(也因为JIT是有时间限制的,不像AOT编译)? 基于Wikipedia的JIT-Compilation Article,JIT-Compilation似乎是一个相对较旧的创新。 “最早发布的JIT编译器通常归功于McCarthy在1960年对LISP的研究。” “ Smalltalk(约1983年)开创了JIT编译的新方面。例如,按需转换为机器代码,并将结果缓存起来供以后使用。当内存不足时,系统将删除部分代码并重新生成再次需要它时。” 那么,为什么解释Javascript 开头呢? 我很困惑,对此我做了很多研究,但没有找到满意的答案。 如此简洁明了的答案将不胜感激。并且,如果需要引入有关解释器,JIT编译器等的更多解释,也将不胜感激。

1
ES6和Javascript之间的区别[关闭]
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加详细信息并通过编辑此帖子来澄清问题。 3年前关闭。 什么是ES6?是JavaScript吗?还是多语言支持者? 我搜索了它,但听不懂,尤其是Wikipedia上的页面。比Java更好吗?在使用这种语言的网站开发中我能做什么? 那么ES6是什么,如何在我的Web应用程序开发中使用它?
18 javascript  es6 

1
美元符号蓝调:JavaScript和PHP
我从小就对C ++和Java进行编程,那里的一切都是安全而美丽的。编译器一定要检查我是否流浪。当然,每个人在大学里都做了一点Perl,但我没有吸气。这些天的孩子们全都在后端使用PHP,而在前端则使用Javascript。在尝试时髦时,我也这样做(用于Web开发)。我一直遇到的问题是,我不小心在Javascript的常规变量前添加了美元符号($),当然没有人说什么,因为这是jQuery对象经常使用的合法语法。 是否有任何调试工具或开发技巧来捕捉这种美元符号的混乱?您是否经常犯同样的错误,如何从情感上处理错误?Chrome开发者工具并不总是会看到这是Javascript错误。我使用PhpStorm和Emacs进行开发,但是这些并没有引起我的愚蠢,尽管我怀疑Emacs确实可以,但是选择不告诉我有关情况。 如果您认为这个问题很荒谬,我认为您是对的。但是我们生活在一个变量前面有美元符号的世界。在这样的世界里,没有什么是荒谬的。

2
为什么Javascript使用JSON.stringify而不是JSON.serialize?
我只是想知道“ stringify”与“ serialize”。对我来说,它们是同一件事(尽管我可能错了),但是根据我过去的经验(主要是使用asp.net),我使用Serialize()并且从未使用过Stringify()。 我知道我可以用Javascript创建一个简单的别名, // either JSON.serialize = function(input) { return JSON.stringify(input); }; // or JSON.serialize = JSON.stringify; http://jsfiddle.net/HKKUb/ 但是我只是想知道两者之间的区别以及为什么选择stringify。 出于比较目的,这是在C#中将XML序列化为字符串的方法 public static string SerializeObject<T>(this T toSerialize) { XmlSerializer xmlSerializer = new XmlSerializer(toSerialize.GetType()); StringWriter textWriter = new StringWriter(); xmlSerializer.Serialize(textWriter, toSerialize); return textWriter.ToString(); }
18 javascript 

3
Javascript开发人员的认证?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 6年前关闭。 我正在寻找在javascript开发领域中扎实但又快节奏的入门。 我想到以下主题: Javascript高级概念,OOP jQuery,jQuery-UI,jQuery-Mobile bone.js node.js BDD和/或TDD http://www.codelesson.com的课程似乎很有希望。 存在/可以推荐哪些Javascript开发人员证书? 您还能推荐哪些其他供应商?

6
自引用匿名闭包:JavaScript是否不完整?
匿名自引用函数闭包在JavaScript中如此盛行的事实是否表明JavaScript是不完整的规范?我们看到了这么多: (function () { /* do cool stuff */ })(); 并且我想一切都取决于品味,但是当您只想要一个私有名称空间时,这看起来不像是垃圾吗?JavaScript无法实现包和适当的类吗? 与同样基于ECMAScript的ActionScript 3相比,您可以获得 package com.tomauger { import bar; class Foo { public function Foo(){ // etc... } public function show(){ // show stuff } public function hide(){ // hide stuff } // etc... } } 与我们在JavaScript中执行的卷积相反(这来自jQuery插件编写文档): (function( $ ){ var …
18 javascript 

9
掌握JavaScript的途径是什么?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我知道我们是如何从JavaScript开始的,我们剪切并粘贴了代码片段以获取一些客户端功能或验证。 但是,如果您遵循这种方式尝试实现丰富的交互行为,那么不久之后您就会意识到自己正在创建一个“大泥浆球”。 那么,在交互层编程中寻求专业知识的途径是什么?哪些书籍,教程,练习和过程有助于编程强大,可维护的JavaScript? 我们都知道练习对任何努力都很重要,但我正在寻找与此处答案类似的路径:https : //stackoverflow.com/questions/2573135/

1
为什么使用angular发送文件如此困难?[关闭]
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加详细信息并通过编辑此帖子来澄清问题。 4年前关闭。 我必须将文件(非常大的文件)发送到服务器。我正在研究我有什么选择以及如何做。我正在使用angular + express + nodejs。 如果使用简单形式,则可以使用multer在服务器上捕获文件,而不会出现问题。很简单。html只是一种形式,我在其中指定目标等,并且一切正常。nodejs代码也非常简单直接。 一旦我尝试使用angular,一切都会变得异常复杂。意思是,我必须使用指令,但服务器仍然有问题。正如我所说,我正在使用multer,它要求数据为“ multipart / form-data”,并且从服务器获取“错误:Multipart:未找到边界” 有很多模块可以按角度加载文件。这表明,不只一种解决方案是一个反复出现的问题。现在,我不想发布代码,因为为此我在Stack Overflow上提出了要求。我的问题更加微妙: 为什么用简单的形式可以完成什么呢?get的角度如此复杂?我并不是说这很糟糕。我的意思是“我想理解”。

6
可以将JavaScript用作通用脚本语言吗?
我已经使用JavaScript和某些框架(jQuery,Prototype和一些node.js)进行客户端Web编程,但是从未在台式机上使用台式机,因为在台式机上,我大部分的脚本工作都是使用Python或Bash进行的。 但是恕我直言,如果在浏览器之外使用JavaScript,JavaScript将成为一种很棒的脚本语言。有人尝试过吗?JavaScript是否可以代替Python / Perl / Bash进行快速而肮脏的脚本编写任务?

1
发生器功能在功能编程中有效吗?
问题是: 生成器是否破坏了功能编程范式?为什么或者为什么不? 如果可以,可以在函数式编程中使用生成器吗?如何使用? 考虑以下: function * downCounter(maxValue) { yield maxValue; yield * downCounter(maxValue > 0 ? maxValue - 1 : 0); } let counter = downCounter(26); counter.next().value; // 26 counter.next().value; // 25 // ...etc 该downCounter方法显示为无状态。同样,downCounter使用相同的输入进行调用将始终导致相同的输出。但是,同时,调用next()不会产生一致的结果。 我不确定生成器是否会破坏函数式编程范式,因为在此示例中counter是生成器对象,因此调用next()将产生与使用完全相同的另一个生成器对象产生的结果相同的结果maxValue。 同样,调用someCollection[3]数组将始终返回第四个元素。同样,next()在生成器对象上调用四次也会始终返回第四个元素。 为了获得更多的上下文,在编写kata编程时提出了这些问题。回答问题的人提出了一个问题,即生成器是否可以在函数式编程中使用以及它们是否保持状态。

1
Math.min为什么要使用一个元素数组
根据MDN, Math.min仅接受数字,并且如果参数之一不是数字,则将返回NaN。的确,如果我们传递一个包含多个数字的数组,则会得到NaN如下所示:Math.min([1,2])但是,如果我们使用一个仅包含一个数字的数组,Math.min则会返回该数组中的数字,如本例所示:Math.min([5])。有谁知道为什么我们会看到这种未记录的行为?
17 javascript  math 

7
对于浏览器中的客户端而言,Python会太慢吗?
我听到过这样的说法:Python太慢了,无法在浏览器中使用。 我认为JavaScript仅在这方面具有优势,因为Google之类的公司之所以需要它(并且使其变得很快)是因为他们需要它才能生存,但是我可能错了。 Python和Javascript的设计方式是否存在差异,从而影响它们(将)在浏览器中的执行方式? 由于到目前为止还没有客户端Python实现,所以我的问题来自某人发表的声明,因此也许它与语言本身有关(尽管我不相信)。

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.