草庐IT

javascript - 为什么 JSONObject.length 未定义?

在下面的代码中,JSONObject.length为2:varJSONObject=[{"name":"JohnJohnson","street":"OsloWest16","age":33,"phone":"5551234567"},{"name":"JohnJohnson","street":"OsloWest16","age":33,"phone":"5551234567"}];但是,在下面的代码中,JSONObject.length是未定义的。为什么?varJSONObject={"name":"JohnJohnson","street":"OsloWest16","age":

javascript - 如何将字符串拆分为给定数量的行?

这是我的问题:给定一个由空格分隔的单词组成的字符串,我如何将其拆分为(大致)偶数长度的N个字符串,只在空格处打断?以下是我从研究中收集到的信息:我开始研究自动换行算法,因为在我看来,这基本上是一个自动换行问题。然而,到目前为止我发现的大部分内容(还有很多关于自动换行的内容)都假设线的宽度是一个已知的输入,而行数是一个输出。我想要相反的。我发现了(非常)几个问题,例如this这似乎是有帮助的。但是,他们都将问题作为优化之一来关注-例如我怎样才能将一个句子分成给定数量的行,同时最大限度地减少行的参差不齐,或者浪费的空白,或者其他什么,并在线性(或NlogN,或其他)时间内完成。这些问题似乎

javascript - 错误 : <rect> attribute width: Expected length, "NaN"。和 <text> 属性 dx : Expected length, "NaN"

我想在D3中实现一个条形图,但是我在dx轴上的值是Date类型,D3库应该接受的数据类型,但它似乎给我这样的错误:attributewidth:Expectedlength,“南”。这是我的代码:abargraph.axispath,.axisline{fill:none;stroke:black;shape-rendering:crispEdges;}.axistext{font-family:sans-serif;font-size:11px;}.MyRect{fill:steelblue;}.MyText{fill:white;text-anchor:middle;}varwid

javascript - 如何在 JavaScript 中合并排序的数组

我有如下三个排序的数组[{name:"a"},{name:"b"},{name:"m"},{name:"x"}][{name:"a"},{name:"e"},{name:"i"},{name:"o"}][{name:"g"},{name:"h"},{name:"m"},{name:"n"}]这些数组根据数组中每个对象的名称属性进行排序。这是我从Java转换来合并两个排序数组的方法functionmergeSorted(a,b){varanswer=newArray(a.length+b.length),i=0,j=0,k=0;while(i这是两个数组的工作fiddlehttp://j

javascript - 获取 javascript 函数对象的参数计数(甚至名称)

我想在接受之前评估回调函数。这意味着我至少需要知道接受的参数的数量——如果数量不匹配,我会在控制台中留下警告。但我无法确定javascript函数对象是否具有可帮助我获取该信息的属性。那么这是否可以不将函数解析为字符串来实现(不值得)? 最佳答案 一个函数有alengthproperty它告诉您它接受多少个命名参数。但是请注意,一个函数可以使用arguments变量来访问变量,即使它没有命名它们;length不适合这个(也没有替代品)。functionfoo(a,b){for(vari=0;i

javascript - 如何在 JavaScript 中围绕多段线绘制多边形?

我想围绕折线绘制多边形。在我的案例中,多段线是谷歌地图的方向,我需要在谷歌地图Canvas中围绕它显示一个多边形。首先:为了偏移,我使用了JavaScriptClipper库。我有以下折线(路线):我使用Clipper在下面制作了一个偏移多边形:我有一个工作JSBinexample.代码是:JavascriptClipperLibrary/Offsetpolylinefunctiondraw(){varpolygons=[[{"X":72,"Y":59.45},{"X":136,"Y":66},{"X":170,"Y":99},{"X":171,"Y":114},{"X":183,"Y

javascript - Regexp.match.length 如果找不到则返回 NULL

我有一个JS正则表达式。vart1=str.match(/\[h1\]/g).length;如果str包含单词[h1]它工作正常,否则它会显示错误!如何解决问题? 最佳答案 vart1=(str.match(/\[h1\]/g)||[]).length; 关于javascript-Regexp.match.length如果找不到则返回NULL,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/quest

javascript - IE 问题 - 不支持 Object.keys(value).length

我一直在尝试在InternetExplorer中调试一些js,但我无法解决这个问题。这是导致错误的行:varnumberOfColumns=Object.keys(value).length;错误是...Message:Objectdoesn'tsupportthispropertyormethodLine:640Char:5Code:0URI:xxx起初我以为它与Object.keys(value).length;属性有关,但奇怪的是(无论如何对我来说),错误是在char5,这是变量名的开头。无论如何,我不知道发生了什么或如何解决它。另外,如果我更换:varnumberOfColum

javascript - 平滑数组的值

如果我有一个数字数组,例如[3,5,0,8,4,2,6],有没有办法“平滑”这些值,使它们彼此更接近并显示更少方差?我研究过使用称为高斯函数的东西对一维情况(这是我的数组)对数据进行加窗,但在实现时遇到了问题。Thisthread似乎正好解决了我需要的问题,但我不明白用户naschilling(第二篇文章)是如何得出高斯矩阵值的。上下文:我正在研究一种音乐波形发生器(借鉴了SoundCloud的设计),它将歌曲在时间t的振幅映射到相应的小节高度。不幸的是,有很多噪音,当程序映射一个微小的幅度导致高度突然下降时,它看起来特别难看。我基本上想平滑条形高度,这样它们就不会那么多变了。我使用的

javascript - 添加到数组时使用 push 方法还是 .length?

这样做的缺点是什么:varmyArray=[];myArray[myArray.length]=val1;myArray[myArray.length]=val2;代替:varmyArray=[];myArray.push(val1);myArray.push(val2);我确信push方法更“可接受”,但在功能上有什么不同吗? 最佳答案 推送速度更快,几乎快300%。证明:http://jsperf.com/push-vs-length-test 关于javascript-添加到数组时