Questions tagged «javascript»

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



3
JavaScript和Web编程的范式转变
如果我没记错的话,曾经有一段时间人们不赞成使用JavaScript进行Web开发,因为除其他因素外,这是用户的隐私和安全问题,有些人对此一无所知。 如今,您几乎看不到不使用JavaScript的主要网站,并且如果没有JS,许多网站将完全无法正常工作,因此请不要随意降级。要么如此,要么可用性会受到严重影响,例如在SE网站上。 从那时到现在,发生了什么变化,从而使JavaScript在Web开发中几乎无处不在?还是我断言JS对我的想象力fig之以鼻,而且一直都是这样?

4
JavaScript中确切未定义的含义是什么?为什么在那里?它有什么用途?它怎么可能有用?
在JavaScript中,我们有一个叫做undefined的东西。我说了些什么,是因为我真的不知道它是基类,内置变量,关键字还是其他。我只知道它在那里。 要查看其实际效果,您只需编写以下代码: undefined; typeof undefined; 谁能向我解释为什么将这个东西插入JavaScript?我们null在这种语言中具有价值,因此不应该像null。在其他语言中,当我们不知道属性或变量的值时,只需将其设置为null。在这里,我们可以做同样的事情。 我们如何在JavaScript中使用这个东西?

4
理想的HTML5 Web应用程序是否有任何限制
让我们假设以下两个假设是正确的。 您的整个用户群到处都有宽带访问 有一个假想的浏览器X,它始终实现HTML5和WHATWG组的整个规范草案,所有用户都使用浏览器X。 我们需要商业公共桌面应用程序用于商业公共HTML5 Web应用程序的固有限制是什么? 我对无插件Web应用程序的局限性感兴趣,这些应用程序既不依赖Flash / Java / SilverLight / etc桥提供额外功能,也不依赖浏览器插件提供额外功能。 不适用的可能限制: 数据库?我们有WebSQL和indexedDB。 文件IO?我们有HTML5 File API,它可以读写。 速度?在最近的JavaScript引擎竞赛中,浏览器不再缓慢。本机C ++仅比chrome的V8引擎快3倍。 开发工具?网络已经成熟,并且有大量可用的工具可供选择。 封闭源?是的,所有代码都是开源的。这是一把双刃剑,对于使用封闭源代码或开放源代码有很多意见。我个人认为开放源代码的优点胜于缺点。 JavaScript / HTML5?诸如“我个人认为HTML5和EcmaScript是可怕的开发平台”之类的争论不计在内。 已知限制: 实时/安全(最高机密)关键代码不属于网络,也不属于网络。它需要使用低级,高度可控的语言(例如C或C ++)编写。 任何需要与计算机上连接的外部第三方硬件交互的工具,都很难与Web应用程序通信。 还有一整套不属于网络的程序。操作系统,驱动程序,服务器软件,低级API。我知道这一点,但是我没有将它们归类为“商业公共”应用程序,这些是可以预先安装在计算机上的软件类型。 顺便说一句,我知道这两个假设非常不现实,但我们可能会在5/10/20/30年内实现它们。我对应用程序的类型以及使它们与网络完全不兼容的应用程序功能感兴趣。 动机: Google应用 Microsoft Office365 Web应用程序列表 Adobe鸟舍 要点: 考虑到桌面应用程序是有效解决方案的一系列问题。 为什么Web应用程序不是有效的解决方案? 如何确定我是否可以使用Web应用程序作为解决方案。 我试图通过断言它们不存在来消除Web应用程序的主要困难(互联网连接和浏览器支持)。 此外,HTML5脱机应用程序和Modernizr有望解决这两个问题。 Web应用程序开发还有哪些其他困难?

4
我应该花时间学习Coffeescript吗?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 8年前关闭。 我是一名自由职业者,我通过帮助他人编写更好的Java脚本代码来赚钱。我对大多数JavaScript框架都有很好的经验。 我想知道是否值得花时间学习咖啡脚本。谁应该学习它,谁不需要?

4
使用哪个基于Java的Web ui框架?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 6年前关闭。 便门 请点击 GWT 瓦丹 据我了解,这些框架都允许使用Java创建GUI组件(具有其所有优点),而无需执行大量的html / javascript。 除了考虑技术因素之外,我还想知道是否有任何一种正在迅速普及。是一个特定的框架正在成为包的领导者,这也会影响决策。

5
您对GWT有什么看法?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 由于我是在这段时间学习Java的,所以我刚刚完成了教程,所以我认为我准备开始为一个项目做贡献了(因为我从经验中知道这是真正学习的最佳方法)。 我看过GWT,看起来很有趣,所以我想尝试一下。但是我在想,由于GWT在JavaScript中部署了Java应用程序,为什么当我可以学习实际的东西(这就是JavaScript)时,为什么应该学习GWT。我的问题:值得吗?如果他们想构建JS应用程序而不是使用Java和GWT,那么有人会更好地学习JavaScript吗?我意识到用GWT构建某些东西可能会更容易,但最终值得吗? 谢谢。
11 java  javascript  gwt 


5
虚假值与null,未定义或空字符串
这些年来,我一直在使用jQuery。但是,最近,我发现自己对JavaScript语言有了更深入的了解。最近,我听说过“真实”和虚假的价值观。但是,我不完全理解它们。目前,我有一些看起来像这样的代码: var fields = options.fields || ['id', 'query']; 我需要确定字段是否为null,未定义或长度为0。 if ((fields === null) || (fields === undefined) || (fields.length === 0)) { ... } 我的问题是,以下内容是否相同: if (!fields) { ... }
11 javascript 

4
我应该解析服务器上的XML还是提供代理并让浏览器解析它?
我需要与第三方API交互。使用此API,我可以从最终用户的浏览器中发出GET请求,并接收XML响应。该数据将在基于浏览器的应用程序中使用,用户可以在该应用程序中进行搜索,使用它来做出决定等。主要问题是大多数浏览器已锁定跨域XML的使用,因此我不能简单地获取API中的XML。 但是,总体数据基本上分为两组。 第一组数据是公共数据,只需要经常更新一次,因此可以为服务器端的所有用户缓存数据,从而大大减少了通信量。 第二组数据是私有的,对于每个用户而言都是个体的。此数据还会在API中更频繁地更新。这导致缓存效率大大降低。 出于可伸缩性的原因,我想使服务器的负载尽可能小。 我面前有两个选择: 提供一个代理,该代理可用于将XML请求路由到第三方服务器,并直接在客户端和第三方API之间来回传递。 让服务器执行从XML到JSON的转换并去除不必要的信息。从本质上讲,这意味着为我们的服务器创建一个新的API,从而转化为来自第三方API的请求 向用户提供数据的最佳方法是什么?(不必是两个选项之一)
11 javascript  api  xml  websites  json 

3
我们应该在何时何地使用Java吊装[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 我是Java的新手。我正在学习用Java语言吊装的概念。 根据Mozilla网站上的Javacsript教程,我碰到了这个词hoisting。根据这些教程,JavaScript中的变量是您可以引用以后声明的变量,而不会出现异常。但是,我的问题是在哪种情况下在客户端Javascript中使用卷扬是合适的,或者为什么我们应该在Javascript中使用卷扬。有什么优点。
11 javascript 

1
在Javascript文件中声明module.exports的约定
是否应声明module.exports没有Javascript / Node.js模块文件的约定? 应该在文件的开头,例如: module.exports = Foo; function Foo() { this.bar = 'bar'; } Foo.prototype.getBar = function() { return this.bar; } 还是应该在文件末尾: function Foo() { this.bar = 'bar'; } Foo.prototype.getBar = function() { return this.bar; } module.exports = Foo; 我知道没有技术差异。第一个示例由于声明悬挂而完全有效。 所以我想知道是否存在某种最佳实践。


3
在类构造函数中注入数据(相对于行为)意味着什么,为什么这被认为是不好的做法?
我正在阅读Remo Jansen的书“ Learning TypeScript”。在一个部分中,作者描述了如何创建一个非常简单的概念验证MVC框架,包括如何创建Model类,并说了以下几点: 需要向模型提供其使用的Web服务的URL。我们将使用一个名为ModelSettings的类装饰器来设置要使用的服务的URL。我们可以通过其构造函数注入服务URL,但通过类构造函数注入数据(与行为相反)被认为是一种不好的做法。 我不明白那句话。特别是,我不明白“注入数据”的含义。在我看来,在几乎所有使用过度简化示例的JavaScript类介绍中,数据都是通过其参数引入(“注入”?)到构造函数中的。例如: class Person { constructor(name) { this.name = name; } } 我当然想到 name是数据,而不是行为,并且在此类示例中普遍将其作为构造函数参数包含在内,并且从未有人提到这是不好的做法。因此,我认为我误解了上面引用中的某些内容,无论是“数据”还是“注入”或其他含义。 您的答案可能包括在JavaScript / TypeScript中何时,何地,如何以及为什么使用装饰器的解释,因为我强烈怀疑该概念与我寻求的理解密切相关。但是,更重要的是,我想更广泛地理解通过类构造函数注入数据的含义以及为什么这样做很糟糕。 为了使上面的引用有更多的上下文,这是这种情况:Model创建了一个类,在本示例中,该类将用于创建股票交易模型,一个用于NASDAQ,一个用于NYSE。每个模型都需要提供原始数据的Web服务或静态数据文件的路径。该书指出,应该使用装饰器(而非构造器参数)获取此信息,从而导致以下结果: @ModelSettings("./data/nasdaq.json") class NasdaqModel extends Model implements IModel { constructor(metiator : IMediator) { super(metiator); } ... } 我只是一直不明白为什么我应该通过装饰器而不是简单地作为构造函数的参数来添加服务网址,例如 constructor(metiator : IMediator, serviceUrl : string) {...

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.