草庐IT

random_numbers

全部标签

javascript - 早于 9 的 IE 版本引发错误 "Expected identifier, string or number”

这个knockout2.1绑定(bind)表达式在Firefox和IE9下工作正常,但在IE9兼容模式下崩溃并出现错误“Expectedidentifier,stringornumber”:我在调试器下找到了实际位置,就是这行代码(knockout-2.1.0.debug.js):returnnewFunction("sc",functionBody)functionBody是一个等于上述表达式的字符串。我尝试使用空格和回车符-没有任何帮助,结果相同:它可以在IE9兼容模式以外的任何浏览器上正常工作有什么建议吗? 最佳答案 我认为问

javascript - Math.floor(Math.random()) +1 实际上做了什么?

当你有Math.floor(Math.random()*10)+1时,它应该根据我的理解选择1-10之间的随机数。但是,当我将+1更改为高于或低于1的任何数字时,我得到相同的结果。为什么是这样?+1到底是什么意思? 最佳答案 随机数生成器产生的值在0.0+1偏移量的数字。通常你可以使用:Math.floor(Math.random()*N)+M这将生成M和M+N-1之间的值。demoFiddle 关于javascript-Math.floor(Math.random())+1实际上做了什

javascript - 解释 Math.floor(Math.random())

我看到很多地方都在使用Math.floor()和Math.random()喜欢下面$('a.random-color').hover(function(){//mouseovervarcol='rgb('+(Math.floor(Math.random()*256))+','+(Math.floor(Math.random()*256))+','+(Math.floor(Math.random()*256))+')';$(this).animate({'color':col,'paddingLeft':'20px'},1000);},function(){//mouseout$(thi

javascript - 影响 Math.random()

我正在寻找一种方法来影响Math.random()。我有这个函数来生成一个从最小值到最大值的数字:varrand=function(min,max){returnMath.floor(Math.random()*(max-min+1))+min;}有没有办法让它比中间的数字更容易得到低和高的数字?例如;rand(0,10)将返回比其余更多的0,1,9,10。 最佳答案 Isthereawaytomakeitmorelikelytogetalowandhighnumberthananumberinthemiddle?是的。您想要更改生

javascript - 如何在 JavaScript 中使用 Math.random 进行测试?

我有一个函数可以在最小值和最大值之间选择一个随机值。因此,当我进行测试时,我会测试该值是否介于最小值和最大值之间。但是由于我的应用程序出现了一些故障,因此测试有时会通过,有时会由于随机性而失败。覆盖/模拟Math.random()以返回0和1并测试我的值是否与最大值或最小值相同是个好主意吗?或者是否有更好的方法来测试JavaScript中的随机性?这是将用于创建随机数的函数:functionconstrain(min,max){returnMath.round(Math.random()*(max-min)+min)} 最佳答案 S

javascript - 为什么 typeof NaN 返回 'number' ?

只是出于好奇。typeofNaN是数字似乎不太符合逻辑。顺便说一下,就像NaN===NaN或NaN==NaN返回false一样。这是JavaScript的特性之一,还是有原因?编辑:感谢您的回答。不过,要让人们头脑清醒并不是一件容易的事。看了答案和wiki我明白了更多,但还是,像这样的一句话AcomparisonwithaNaNalwaysreturnsanunorderedresultevenwhencomparingwithitself.Thecomparisonpredicatesareeithersignalingornon-signaling,thesignalingvers

javascript - 单元测试 : Number. toLocaleString()

我本以为(10000).toLocaleString('de-DE')会返回"10.000"但我却得到了"10000".是否有不支持的原因?有没有更好的方法来格式化数字? 最佳答案 这是一个webkit问题,PhantomJS不想保持国际化......所以不幸的是我们在一段时间内一直坚持这个问题。https://github.com/ariya/phantomjs/issues/12581我最终做的是编写一个自定义匹配器来检查两者,因为我在Chrome和PhantomJS中运行。jasmine.addMatchers({isAnyO

javascript - Math.random 随机位数

对于Math.random应该产生多少随机位有什么要求吗?我对Chrome和Firefox的实现做了一些测试,将结果转换为十六进制以检查位,Firefox27.0.1给出的结果如下0x1.de619579d56f3p-10x1.ef1ada9306decp-20x1.df3b75e208ce6p-1而Chrome版本33.0.1750.154m给出0x1.1190f39c00000p-20x1.b959e3b600000p-10x1.90f614b400000p-2相比之下,这真是太可怕了。它似乎是一个32位的结果,而Firefox的值似乎使用53个随机位。

javascript - 代码挑战 : Create a class Foo that tracks the number of total object instances

我正在尝试解决工作应用程序的代码挑战,但我遇到了困难,非常感谢任何帮助。问题:创建一个Foo类,它有一个名为refCount的方法。在类或其任何实例上调用refCount应该返回存在的实例总数。示例:varf1=newFoo();f1.refCount();//shouldbe1Foo.refCount();//shouldbe1varf2=newFoo();f1.refCount();//shouldbe2f2.refCount();//shouldbe2Foo.refCount();//shouldbe2到目前为止我有这样的事情:functionFoo(){this.refCoun

javascript - JS number 函数在末尾加零

这个问题在这里已经有了答案:JavaScriptsumminglargeintegers(10个答案)关闭5年前。我正在使用Number()JS函数,它应该将字符串值转换为数字。它适用于少量数据。对于大的-它开始用零代替值,如图所示:是否有解决此问题的方法?