今天在利用JS创建一个新元素的时候,总是提醒:Uncaught TypeError: undefined is not a function (未知的类型错误:不确定是否是一个函数)。仔细一检查,才发现自己的方法名写错了,本来应该是document.createElement(),但是我粗心写成了document.creatElement(),少写了一个e。
原错误代码如下:var myOption = document.creatElement("option");
正确代码应该是:var myOption = document.createElement("option");
真是粗心酿成的,浪费了好长时间才调试好。
其实每次出错时,我首先会按照自己的思路一一排查,想自己找出到底哪里出错了。这样很浪费时间。google chrome自带的JS调试平台,F12键其实很多时候已经定位了错误发生的原因和错误代码,应该首先分析一下提示的错误原因,然后找到定位的代码段,仔细检查看是否属性名、方法名写错了。如果属性名、方法名都没有错,就应该想到与此行代码相关的代码了。比如昨天出现的responseText属性里面有内容,而属性responseXML里面没有内容的情况,就是因为头信息的content-type给错了,本来应该是content-type:text/xml,但是我写成了content-type:text/html。