草庐IT

FILTER_VALIDATE_NUMBER_FLOAT

全部标签

javascript - 期望一个 float 数组接近 Jasmine 中的另一个数组

我正在测试一个返回数字数组的Javascript函数,以查看返回的数组是否包含与包含预期输出的数组相同的元素:expect(myArray).toEqual(expectedArray);如果myArray和expectedArray仅包含整数,则此操作完美无缺,但如果存在至少一个float,则会因浮点精度错误而失败。toBeCloseTo似乎对数组不起作用。目前我正在循环进行成员检查:for(vari=0;i...但是有没有更简洁的方法来做到这一点?如果测试因任何原因失败,输出将包含大量骇人听闻的错误消息。 最佳答案 下面的代码应

javascript - 为什么 "(2.5 < 2.5 + Number.EPSILON)"在 JavaScript 中是假的?

我想在数组中查找小于某个值的值。我尝试使用Number.EPSILON,因为输入值不是确定值(例如1.5000000000001)。我在测试中发现了一些奇怪的东西:>>(1.5>(2.5这是为什么?测试环境为Chrome浏览器控制台。 最佳答案 同时Number.EPSILON本身可以精确表示,但这并不能保证向其添加值(或对其进行任何进一步操作)将导致完美的精度。在这种情况下,1.5+Number.EPSILON结果略高于1.5:console.log(1.5+Number.EPSILON);明显大于1.5。另一方面,将2.5添加到

javascript - 在 JavaScript 中实现 32 位 float 或 64 位长整型?

有谁知道准确实现IEEE754的JavaScript库?32位浮点值规范?我问是因为我正在尝试用JavaScript编写交叉编译器,并且由于源语言严格要求浮点值遵守IEEE754,因此生成的JavaScript代码也必须这样做。这意味着我必须能够为32位float的加法、减法、乘法和除法获得完全正确的IEEE754值。不幸的是,标准的JavaScriptNumber类型是64位double,它会给出与我预期不同的结果。该项目确实必须使用JavaScript,这是我尚未克服的唯一主要障碍。我也遇到了64位longs的问题。 最佳答案

javascript - Array.prototype.filter(Number) 中的 'Number' 是如何工作的?

我发现使用Array.prototype.filter方法从字符串中删除所有非数字的方式很酷,但我不完全确定它是如何使用Number实现这个的原型(prototype):vararr='75number9';arr.split(/[^\d]/).filter(Number);//returns[75,9]当我检查typeofNumber时,我返回'function'。这是怎么回事?让我更加困惑的是,如果我用String替换Number,结果是一样的。它仍然有效!arr.split(/[^\d]/).filter(String);//returns[75,9]Array和Object作为

javascript - 网络音频合成 : how to handle changing the filter cutoff during the attack or release phase?

我正在使用WebAudio构建RolandJuno-106合成器的仿真器。TheliveWIPversionishere.如果在启动或释放期间更改了截止频率或包络调制量,同时滤波器同时被包络调制,我对如何处理更新滤波器犹豫不决。Thatcodeislocatedaroundhere.当前的实现不像模拟合成器那样响应,但我不太清楚如何计算它。在真实的合成器上,滤波器会根据截止频率、包络调制量和包络中的当前阶段而立即改变,但上升或下降也会平滑地继续。我将如何为这种行为建模? 最佳答案 辉煌的项目!您不需要自己对这些求和-WebAudio

javascript - 使用 JavaScript Number() 函数比较两个数字是否相等

当我尝试使用JavaScriptNumber()函数比较两个数字时,它会为相等的数字返回false值。但是,大于(">")和小于("true。varfn=20;varsn=20;alert(newNumber(fn)===newNumber(sn));此警报返回一个false值。为什么这不返回true? 最佳答案 newNumber()willreturnobjectnotNumberandyoucannotcompareobjectslikethis.alert({}==={});willreturnfalsetoo.删除new,

javascript - Angular : filter and bold part of the result

我有一个像这样过滤的列表:ng-repeat="iteminitems|filter:query|limitTo:10"和一个搜索输入ng-model="search.name"它有效,但我想将结果中的查询部分设为粗体。例子:query=zza结果:李*zza*Pi*zza*Abc*zza*def 最佳答案 您可以制作自己的自定义过滤器,根据搜索字符串更改输入:angular.module('app').filter('searchfilter',function(){returnfunction(input,query){varr

javascript - 如何使用 jQuery Validate 正确验证放置在多个选项卡上的 Twitter 的 Bootstrap 表单?

我在几个Twitter的Bootstrap选项卡上有一个表单:HomeProfile当我在事件选项卡上使用jQuery验证验证表单,并且具有无效值的字段位于同一选项卡上时,验证失败(这是正确的)。但是当我在一个选项卡上而无效值在另一个选项卡上时,验证返回true,这是不正确的。我该如何解决?如何在另一个选项卡上突出显示该字段?请参阅thisdemo(只需按下按钮next-它会显示错误消息,然后转到最后一个选项卡并在那里按下finish)。 最佳答案 我认为您的问题在于验证仅发生在可见元素中。阅读此issue我们在1.9版中看到了这一

javascript - 什么是 Array.map(Function.call,Number)

vararray1=[1,4,9,16];map1=array1.map(Function.call,Number);为什么map1的输出是[0,1,2,3],这个map函数是干什么的? 最佳答案 Array.prototype.map调用为数组的每个成员提供的函数,并返回一个由它们的返回值组成的新数组。在这种情况下,提供的函数是Function.call.Array.prototype.map的第二个参数指定所提供的函数应该运行的上下文。在这种情况下,上下文是Number.Array.prototype.map的简单实现可能类似于

javascript - 参数类型 Number 不可分配给参数类型 String|Function

varstr=name.toUpperCase();varch=newArray();ch=str.split('');for(vari=0;i=97){varpos=i+1;result_code.replace(pos.toString()+pos.toString()+pos.toString()+pos.toString(),(temp-temp_integer)+40);}}}此代码在这一行result_code.replace(pos.toString()+pos.toString()+pos.toString()+pos.toString(),(temp-temp_int