草庐IT

fcatch-undefined-behavior

全部标签

javascript - 带有 JSONP 的 AJAX 返回错误 Callback is Undefined

这是我的ajax调用。我知道header是正确的,因为当我直接访问url时,它会给我这样的信息:jsonpCallback({"id":"274"})但是当我进行ajax调用时-它说UncaughtReferenceError:jsonpCallbackisnotdefined$.ajax({url:'http://localhost:9000/product/rest/company?'+$('form').serialize(),type:'GET',crossDomain:true,//enablethisdataType:'jsonp',jsonpCallback:'callb

javascript - JavaScript 中的 undefined 和 window.undefined 有什么区别?

如果a未定义,这有效:if(window.a){}虽然这会引发错误:if(a)谁能解释一下为什么? 最佳答案 window.a是window的一个属性,它是undefined。a是一个变量,它未声明。要使用变量,您应该首先使用var语句声明它。由于您没有声明a,因此解释器会引发错误。对象属性无需显式声明即可使用。Crockford在TheGoodParts中写道:Ifyouattempttoextractavaluefromanobject,andiftheobjectdoesnothaveamemberwiththatname,i

javascript - "Unable to get value of the property ' appendChild ': object is null or undefined"同时将脚本附加到 IE

当我尝试将以下脚本附加到IE时,出现此错误:“错误:无法获取属性‘appendChild’的值:对象为空或未定义”它在Chrome中运行良好,但在IE9上测试时会出现这种情况。谁能告诉我错误是什么?//createscriptindocumentvarfbScript=document.createElement("script");fbScript.type="text/javascript";//makescriptsourcethefacebookpluginfbScript.src="http://connect.facebook.net/en_US/all.js#xfbml=

javascript - Requirejs + Backbone 未捕获类型错误 : Cannot read property 'Model' of undefined

我从Backbone开始。我使用Require来加载模块并得到了这个错误。谁能解释一下?在文件user.js中,当我尝试创建Backbone.Model.extend时出现此错误。我使用了Backbone.js0.9.10、jQueryv1.9.0、RequireJS2.1.4、Underscore1.4.4。谢谢。index.html主要.jsrequire.config({paths:{jquery:'libs/jquery/jquery-min',underscore:'libs/underscore/underscore-min',backbone:'libs/backbone

javascript - JSON.stringify(undefined) 不是字符串

JSON.stringify(null)返回字符串null。JSON.stringify(undefined)返回值undefined。它不应该返回stringundefined吗?解析值undefined或字符串undefined会给出一个SyntaxError。有人可以解释为什么JSON在undefined上阻塞以及如何在字符串化/解析值时绕过它吗? 最佳答案 undefined不是有效的JSON,因此函数可以正常工作。http://en.wikipedia.org/wiki/JSON#Data_types.2C_syntax_

javascript - Backbone.js 集合 fetch() 抛出未捕获的类型错误 : Cannot read property 'idAttribute' of undefined

我正在努力学习Backbone.js它可以获取、放置和删除单个模型。但是,当我创建一个集合时,fetch方法给出了这个错误:未捕获的类型错误:无法读取未定义的属性“idAttribute”(backbone.js:683)这是我正在尝试的代码:Person=Backbone.Model.extend({urlRoot:'/people'});PersonList=Backbone.Collection.extend({model:'Person',url:'/people'});varpersonList=newPersonList();personList.fetch();在获取时,

javascript - 避免 IE 抛出 : Error: 'console' is undefined 的常见习语

我已经安装了firebug并编写了所有这些日志语句。我已经在IE中测试了我的应用程序,当然我遇到了“未定义”错误。避免这种情况的常用习语是什么。我真的不想评论我文件中的所有console.log语句,也不想mock它们。我不知道该怎么做。 最佳答案 我通常会像这样制作一个包装函数:functionlog(obj){if(window.console&&console.log)console.log(obj);}或者您可以在脚本文件/元素的开头执行类似的操作:if(!window.console){window.console={lo

javascript - 了解 Javascript : how it works, 中的 “undefined” 如何安全地检查它以及是否可以重新分配

我一直在阅读JavaScript中的undefined,现在我不确定我的理解是否正确。关于如何检查undefined有很多讨论,但不知何故我找不到任何提及对我来说似乎是理解undefined实际工作方式的基础的东西(undefined是宿主对象的属性)。这就是这个问题的原因,我需要确认我理解的是正确的,如果我错了,我希望得到澄清。好的,首先,undefined是宿主对象(浏览器中的window)的属性,因此使用它是完全合法的:window.undefined此属性的值是"undefined"类型。这是与Object、String、Number和Null一起的JavaScript类型之一

javascript - 如何解决这个 "Uncaught TypeError: Cannot convert undefined or null to object "

我的功能是:functioncollect_que_ids(e){varval=e.val();vardata_lo=e.attr('data-lo');new_hash={};new_hash[val]=data_lo;if(e.is(':checked')){if(checked_box_hash.includes(new_hash)){checked_box_hash;}else{checked_box_hash.push(new_hash);}}else{new_hash_key=Object.keys(new_hash)[0]new_hash_value=new_hash[n

javascript - 鉴于 V8/spidermonkey/chakra 的内部工作原理,在 JavaScript 中显式初始化 undefined object 成员是否是一种优化?

在JavaScript中,一个通常被吹捧的良好性能原则是避免改变对象的形状。这让我想知道,这是不是classFoo{constructor(){this.bar=undefined;}baz(x){this.bar=x;}}一个有值(value)的最佳实践,将提供比这更好的性能classFoo{constructor(){}baz(x){this.bar=x;}}这是真的还是假的?为什么?在一个JS引擎中是否比其他引擎更真实或更不真实? 最佳答案 这里是V8开发人员。是的,总的来说,第一个版本是一个有值(value)的最佳实践。这样