jjzjj

javascript - 'length' 为空或不是对象?浏览器 8

我在IE8中得到以下错误:lengthisnullornotanobject有人有什么想法吗?非常感谢反馈。functionrefresh(){$.getJSON(files+"handler.php?action=view&load=update&time="+lastTimeInterval+"&username="+username+"&topic_id="+topic_id+"&t="+(newDate()),function(json){if(json.length){for(i=0;i 最佳答案 只需检查对象是否为nul

javascript - 在 Javascript 中模拟 map /集合

我有一个json对象,例如box={};,我将继续向其添加键值,例如box['somename']=somevalue。somename可能会重复,我希望最后一个实例的值获胜。这一切都很好。现在我需要对它进行操作,就好像它是一个数组一样。基本上,现在我有了一组唯一键,我想要一个主要操作box.length来查看有多少个唯一元素。是否有一种优雅的恒定时间方法可以在不遍历该对象的所有属性的情况下执行此操作? 最佳答案 varbox={length:0,add:function(k,v){if(typeofthis[k]==='undef

javascript - if (var.length >0){} 和 if (var){} 之间的区别

在javascript中使用有区别吗if(foo.length>0){//runcodeinvolvingfoo}和if(foo){//runcodeinvolvingfoo}如果是这样,有人可以解释一下区别并举例说明它们不一样吗? 最佳答案 这是一个不相同的例子:varx=[];alert(x?'yes':'no');//displays"yes"alert((x.length>0)?'yes':'no');//displays"no" 关于javascript-if(var.leng

javascript - 为什么我的 JQuery 插件导致无法读取未定义的属性 'length'?

我有点不好意思问另一个无法读取未定义的属性“长度”问题,但是没有在线(SE或其他)答案与我手头的问题有任何关系。p>我已尽力缩小我的情况发生此脚本错误的原因,但我不知所措。如果我在页面中排除此标记,错误将不再出现:所有jquery-ui-1.10.3.drag-drop.min.js文件是jquery-custom我重命名的文件,其中包括jquery可拖动、可放置和可排序。我确信这个错误是由我写的一些脚本引起的,但由于我刚刚开始对此进行测试,所以我没有太多的脚本可以“注释掉”,当我这样做时,它我的困惑,没有摆脱错误。到目前为止,我发现消除该错误的唯一方法是完全排除该插件,如果我这样做,

javascript - 在循环中,结束条件中的任何操作是否在每次迭代中都得到评估?

在下面的代码中:for(vari=0;i操作object.length是否在迭代中每次都被评估?最有意义的是,该语言将对其进行一次评估并保存结果。但是,我正在阅读一些代码,其中有人在循环开始之前评估操作并将其存储在结束条件中使用的变量中。不同的语言对此有不同的处理方式吗?有关于Javascript的具体信息吗? 最佳答案 这显然取决于语言。对于JavaScript,规范(ECMAScript§12.6.3)要求每次都对其求值。作为一种优化,特定的JavaScript运行时可以跳过一个或多个length调用,如果它可以证明结果不会改变

javascript - 从中删除元素后javascript数组的长度不会改变

我正在尝试将一个数组值复制到另一个数组中,但在不破坏与该数组关联的链接的情况下换句话说,我不能只将新数组分配给该值,这就是为什么我不能使用像slice()或连接()。这是执行该操作的函数代码:self.updateBreadcrumbs=function(newBreadcrumbs){varold_length=self.breadcrumbs.length;varnew_length=newBreadcrumbs.length;varj=new_length>old_length?new_length:old_length;for(vari=0;i我的问题是,当我从数组中删除某些内

javascript - 不断循环一个javascript数组并将结果显示到div?

我的网站上有一堆推荐,目前在一个页面上,我试图让一个div以5秒的间隔显示每个1,如果数组达到最后一个值,它应该从头开始再次阵列。这是我目前所拥有的...vartestimonial=newArray();testimonial[1]="Rugby";testimonial[2]="Baseball";testimonial[3]="Cricket";varlength=testimonial.lengthvari=1;setInterval(function(){while(i任何帮助都会很棒,谢谢。 最佳答案 尝试vartest

javascript - 如何使用 JavaScript 估计字符串的磁盘大小?

我需要尝试估计JavaScript中文本字符串(可以是原始文本或图像/音频等的Base64编码字符串)的DISK大小。我不确定如何估计这个。谷歌搜索时我唯一能找到的是.length所以我想也许StackOverflow上的某个人可能知道......我需要知道的原因是我有一个localStorage脚本需要(或希望拥有)检查用户何时接近他的5MB(或IE中的10MB)配额并提示他们增加最大大小的能力对于域。因此,如果用户点击4.5MB的数据,它会提示You'renearingyourbrowsers5MBdatacap.Pleaseincreaseyourmaxdataby...[ins

javascript - Uint32Array( buffer, byteOffset, length ) 没有按预期工作

AccordingtoMSDN我可以通过3种方式创建Uint32Array:newUint32Array(length);newUint32Array(array);newUint32Array(buffer,byteOffset,length);第一种和第二种方法效果很好,但第三种方法对我不起作用。这段代码有什么问题?varbuffer=newArrayBuffer(8);varuint32s=newUint32Array(buffer,4,4);uint32s[0]=0x05050505;varuint8s=newUint8Array(buffer);for(vari=0;i这很好

javascript - 在使用 lodash 的 partialRight 创建的部分函数上解决未设置的 "length"属性

我正在使用MomentTimezone用于浏览器中的时间操作。我正在使用TypeScript和Lodash也是。我有一些accountTimezone设置在window上包含经过身份验证的用户的首选时区。我正在尝试创建一个辅助方法localMoment()将接受任何themanysignaturesofmoment.tz(),附加此window.accountTimezone作为最后的timezone:string争论。好像partialRight可能正是我要找的。constlocalMoment=partialRight(moment.tz,window.accountTimezon