草庐IT

不一样

全部标签

javascript - 关联数组是否像哈希表一样执行?

想象一下,您在JavaScript中有一个关联数组:varhashTable={};hashTable["red"]="ff0000";hashTable["green"]="00ff00";hashTable["blue"]="0000ff";当您检索这样的值时会发生什么:varblue=hashTable["blue"];性能是否与其他语言的哈希表相似?我的意思是,是否存在用于确定属性位置的实际哈希函数,或者是否存在循环搜索,例如:for(varcolorinhashTable){if(hashTable.hasOwnProperty(color)){//lookformatchi

javascript - 我如何在 Nodejs Buffer 上像 struct union type 一样处理 C?

我正在尝试在Nodejs上解析一个使用结构联合类型的缓冲区,我该如何在Nodejs上本地处理这个问题?我完全迷路了。typedefunion{unsignedintvalue;struct{unsignedintseconds:6;unsignedintminutes:6;unsignedinthours:5;unsignedintdays:15;//from01/01/2000}info;}__attribute__((__packed__))datetime; 最佳答案 这个联合要么是一个32位整数value,要么是info结构

javascript - toFixed(2) 轮 "x.525"不一致?

我在使用toFixed时遇到舍入错误:我在我的数值计算中使用了toFixed(2),但在少数情况下舍入结果不如预期。假设toFixed(2)应用于值17.525然后它给出结果17.52,如果它应用于5.525然后它给出结果5.53。在后一种情况下,舍入结果是准确的,那么您能否建议需要做什么才能像后一种情况那样获得准确的舍入结果。或者您能否建议此toFixed函数的替代方法以获得正确的舍入结果? 最佳答案 float不准确意味着大多数以.525结尾的数字实际上是.52500..1,其他是.5249999.....值的舍入方式取决于IE

javascript - 如何在 JS 中创建一个方法,就像在 Java 中创建一个抽象方法一样?

我正在开发一个小游戏-剪刀石头布。我有一个原型(prototype)-RPSPlayer我有两种播放器:Player1,Player2(player1和player2是带有原型(prototype)的对象RPSPlayer的)每个播放器都使用函数播放:Player1.play()。每个玩家都有不同的游戏策略。因此,我需要2个play()实现。如果是Java,我会创建一个抽象类RPSPlayer,它有一个抽象方法play()和另外两个继承自RPSPlayer的类;他们每个人都有自己的play()实现。我的问题是:在JS中正确的做法是什么?我希望我说清楚了,谢谢大家。

Javascript:快速查找对象中的值(就像我们可以使用属性一样)

我有一个对象,它有一对用于简单编码/解码的替换值(不是为了安全,只是为了方便;太复杂了,无法在这里解释)。它的形式是varobj={x:y,x:y,...};其中“x”是编码时的值,“y”是解码后的值。解码很简单:我循环遍历字符串的字符,并通过括号查找对象中的charAt(i)值:obj[str.charAt(i)]。(我没有检查我们是否需要大写或小写版本(对象中的所有键/值都是小写),但这很简单。)为了编码,我当然必须在对象中寻找值,而不是属性。目前,我正在使用for...in...循环遍历属性,并根据charAt(i)值检查值。我当前的代码是:vari,j,output='',st

javascript - 像在 Perl 中一样在 JavaScript 正则表达式中嵌入注释

有没有办法在JavaScript正则表达式中嵌入注释,例如youcandoinPerl?我猜没有,但我的搜索没有找到任何说明你可以或不能的东西。 最佳答案 您不能在正则表达式文字中嵌入评论。您可以在传递给RegExp构造函数的字符串构造中插入注释:varr=newRegExp("\\b"+//wordboundary"A="+//A="(\\d+)"+//whatiscaptured:somedigits"\\b"//wordboundaryagain,'i');//caseinsensitive但是正则表达式文字要方便得多(请注意

javascript - 对 AngularJS 依赖注入(inject)不一致感到困惑

我是angular.js的新手,并完成了几个教程,包括codeschool上的所有教程。我发现它们非常有用,并且学到了很多东西。但是现在我已经完成了我的“介绍”并开始尝试在某些事情中使用它,我发现了一些令人困惑的不一致之处,最显着的是“依赖注入(inject)”。在我学习的教程中,服务的依赖是这样完成的;app.controller('name',[$http,$scope,function($http,$scope){//..code...//}]);这让我觉得很奇怪,但它仍然有效。我很困惑为什么[]没有在函数之前终止(我假设这就是您在javascript中称为“回调”函数的东西?)

javascript - 在 Javascript 中使用 new 和不使用它一样吗?

考虑这段代码:functionklass(z){this.a=z;returnthis;}varb=klass(5);varc=newklass(9);当我在Chrome中运行它并检查控制台时,b结果是DOMWindow类型,而c是类型类。虽然两者都具有属性a,但实际上都是类的实例。用新的和不用新的一样吗?在这个例子中是否相同,但在其他情况下是否不同?在效率或行为方面是否存在差异? 最佳答案 当一个函数被这样调用时klass(6);//calledfunctioninvocationthis将被设置为全局对象,或者,如果您处于严格模

javascript - 我可以像任何其他库一样将 JointJS 作为 AngularJS 模块注入(inject)吗?

我有一个带Angular应用程序,我需要使用这个库http://www.jointjs.com/,所以我下载了joint.min.js和joint.min.css并将它们的路由放在index.html中,但我不知道在app.js中放入什么来注入(inject)它,我不断从angular获取注入(inject)错误.这可能不是这样做的方法吗?我用谷歌搜索了很多但没有找到任何方法。我将不胜感激任何帮助,提前致谢! 最佳答案 如果您想在Angular应用程序中呈现Jointjs图表,那么这很容易做到。在我的例子中,我将Jointjs代码封

Javascript 不兼容/不一致

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我希望在几周内做一次演示,并且想知道:您在开发时要注意的十大Javascript不兼容性是什么?是什么让你绊倒了?我可以从一个开始:varsomevar={'internet':'explorer','hates':'trailing','commas':'in','json':'code',//ohnoes!}使用jQuery或base等框架无法或无法