草庐IT

random_number_array

全部标签

javascript array - 什么是真正的表达?

创建3个未定义的空数组。vara1=[,,,];vara2=newArray(3);来自JavaScript:权威指南,0ina1//true0ina2//false但是,在现实世界的浏览器中,得到不同的结果。(IE8和Chrome33...)0ina1//false0ina2//false哪个是真实的,书本还是现实世界? 最佳答案 看来这本书是错的。从specification可以看出,[,,,]不向数组添加任何值:TheproductionArrayLiteral:[Elisionopt]isevaluatedasfollows

javascript - Math.floor(Math.random() * 5 + 1)的概念,真实范围是多少,为什么?

通过将随机数(介于0和1之间)乘以5,我们使其成为介于0和5之间的随机数(例如,3.1841)。Math.floor()将该数字向下舍入为整数,并在末尾添加1将范围从0到4更改为1到5(最多并包括5)。上面的解释让我很困惑……我的解释如下:--加上5得到5个数字的范围--但它以0开头(像数组?)--所以它在技术上是0-4--加上一个,就变成了1-5我是JS的新手,甚至不知道这种问题在这里是否合适,但这个网站到目前为止一直很棒。感谢您的帮助! 最佳答案 来自MozillaDeveloperNetworks'documentation在

javascript - Float32Array 上的 .push()

我无法在Float32Array上使用.push(),出现错误,所以我尝试这样添加它:myarray=newFloat32Array();myarray.push=function(){for(variinarguments){this[this.length]=arguments[i];}};但它不起作用。我没有得到错误,但我的数组的值都是0。为什么? 最佳答案 基本上是一个Float32Array只是ArrayBuffer的View对象(就像JS中的所有类型数组一样)。此ArrayBuffer具有固定长度,而Float32Arr

javascript - 为什么 new Number(2) != new String ("2") 在 JavaScript 中

以下评估为true:newNumber(2)==2newString("2")=="2"很明显,但请执行以下操作:"2"==2newNumber(2)=="2"newString("2")==2那么有人可以清楚地解释为什么他下面的评估是false吗?newNumber(2)==newString("2") 最佳答案 因为JavaScript具有数字和字符串(和bool值)的原始和对象版本。newNumber和newString创建object版本,当您将==与对象引用一起使用时,您比较对象引用,而不是值。newString(x)和S

javascript - typescript : Array<Object> vs Object[]

在Typescript中,这些赋值之间有什么区别:varObject[];varArrayTypeScript中的泛型是否与Java等语言具有相同的语义含义,还是仅仅是语法糖? 最佳答案 这只是糖。Object[]和Array在TypeScript中完全相同。检查这一点的一种方法是编写以下代码:varx:Object[];varx:Array;重复的变量声明必须具有完全相同的类型,因此这里没有错误意味着类型是相同的。 关于javascript-typescript:ArrayvsObje

javascript - 是不是写: var arr=[]; than var arr=new Array();?比较好

这个问题在这里已经有了答案:What’sthedifferencebetween"Array()"and"[]"whiledeclaringaJavaScriptarray?(19个回答)Whatisthedifferencebetween`newObject()`andobjectliteralnotation?(12个答案)CreateanemptyobjectinJavaScriptwith{}ornewObject()?(10个答案)关闭5年前。是不是写的比较好vararr=[];thenvararr=newArray();varobj={};thenvarobj=newObj

Javascript Array.prototype.filter 意外输出

背景最近在面试,有人给我做了个测试:vararray=[1,2,3];array[10]=10;alert(array.filter(n=>n===undefined));我相信这会警告一个数组有7xundefined,或者这些行中的某些内容。但是,它输出一个空数组,如长度为0的数组。问题对我来说,这是令人困惑的。谁能帮我解释为什么会这样? 最佳答案 不访问已删除或未初始化(在稀疏数组上)的项目。Array#forEachDescriptionforEach()executestheprovidedcallbackonceforea

javascript - Ruby 中的 Array.prototype.splice

有friend问我在Ruby中实现JavaScript的splice方法效果的Ruby最佳和性能的方法。这意味着不会对数组本身或副本进行迭代。“从索引开始,删除length项并(可选)插入元素。最后返回数组中删除的项。”这是一种误导,请参阅下面的JS示例。http://www.mennovanslooten.nl/blog/post/41没有可选替换的快速破解:from_index=2for_elements=2sostitute_with=:testinitial_array=[:a,:c,:h,:g,:t,:m]#expectedresult:[:a,:c,:test,:t,:m]

javascript - 防止 JavaScript Number 函数舍入大数字

我有一个字符串值“9223372036854775807”。我在JavaScript中使用Number()函数,使用以下代码将其转换为数字值varnumericVal=Number('9223372036854775807');当我检查numericVal中的值时,它是9223372036854776000。我怎样才能得到代表数字的字符串的等效值? 最佳答案 JavaScript数字是DoublePrecisionFloats;可以精确存储的最大整数是2^53(9007199254740992)。如果你真的需要它的数字,你有一些有趣

javascript - 当 var trees = new Array ("redwood", "bay", "cedar"时 0 如何成为树的属性)

这个问题在这里已经有了答案:Accessnumericpropertiesofanobjectusingdotnotation(2个答案)关闭11个月前。我在mozilla文档中看到了这个例子,但我不明白为什么。如果0是树的属性,我原以为trees.0会返回redwood但这是一个错误的陈述。a[0]是一种访问数组0属性的方法吗?在这种情况下,a["length"]也应该有效(逻辑上)。谁能说清楚?链接:developer.mozilla.orgvartrees=newArray("redwood","bay","cedar","oak","maple");0intrees;//ret