JS錯誤資訊型別

2022-08-04 01:21:09 字數 3632 閱讀 2487

1.syntaxerror 語法錯誤

①變數名不規範

//

變數名不規範

var 1 = 1;

未**獲的語法錯誤,這個錯誤是js機制自動丟擲來的 意外的數字

下面兩個是同一種情況

var 1a = 1;

function 1test(){}

無效或意外的標記

//

關鍵字賦值

new = 5;

意外的標記 =

下面最後加了冒號

//

基本的語法錯誤

var a = 5:

意外的標記 :

2.referenceerror 引用錯誤

//

變數或者函式未被宣告

test()

test沒有被定義

給無法被賦值的物件賦值的時候

var a = 1 = 2

var a = 2;

console.log(a) = 3

無效的左側賦值

3.rangeerror 範圍錯誤

//

陣列長度為負數時

var arr = [1,2,3]

arr.length = -2

無效的陣列長度

物件方法引數超出可行範圍

var num = new number(66.66);

console.log(num.tofixed(-1));

數字引數引數必須在0到100

4.typeerror 型別錯誤

//

呼叫不存在的方法

123()

123不管有沒有定義 它都不是乙個方法 根本就沒有判斷定義了沒有,先判斷型別,是不是屬於乙個function,如果是乙個function 後面就可以跟括號

並沒有在obj裡找到say這個方法,這個時候就會報這個錯誤 因為 點 後跟的是屬性名但是帶了括號,屬性不可能像方法一樣執行, 所以要看是不是方法,如果say不帶括號就不會報錯,不帶括號時會認為是個屬性但沒有賦值

例項化原始值的問題

var a = new 'string';

new後面必須要是乙個構造器 ,new乙個原始值會報錯 new後要跟函式 不管是建構函式還是普通函式,只要new函式 就會有例項化 'string' 不是函式就會報錯

var a = new  123;
這個和上面情況一樣,不是建構函式

5.urierror uri錯誤

uri 統一資源識別符號 uniform resource identifier

url 統一資源定位符 uniform resource locator

urn 統一資源名稱 uniform resource name

url和urn是uri的子集,屬於uri

url有協議有網域名稱有資源空間 通過乙個位址能訪問到特定的頁面

urn 沒有了url中的協議 相當於乙個id 名字 指代了資源的唯一性 所以叫name

let str = "測試字元";

let encodestr =encodeuri(str);

console.log(encodestr);

//%e6%b5%8b%e8%af%95%e5%ad%97%e7%ac%a6

let decodestr =decodeuri(encodestr);

console.log(decodestr);

//測試字元

上面是使用encodeuri方法把中文轉為中文編碼字元 是js內建的方法,

再使用decodeuri方法把中文編碼字元轉為中文,也是js內建的方法 ,接下來就隨便輸個中文編碼 看能不能轉成中文

let str = "%ef%erffv";

console.log(decodeuri(str));

uri不符合常規的

6.evalerror eval函式執行錯誤

現在很少見 因為很少使用eval方法 (不知道怎麼讓它報錯)

es3開始 eval()函式不推薦使用,有效能問題, 難除錯, input獲取的值和eval混在一起可能會有安全隱患

eval()最大的作用是字串裡寫js是可以執行的

eval("var a = 1;console.log(a)")

var obj =

console.log(eval("obj"));

列印的不是字串obj,而是乙個物件 換成 console.log(eval(obj)) 也是一樣的

然而eval()方法最大的用處不是在這裡

json字串 使用eval()方法後會變成json物件

eval(jsonstr)

json是用來儲存資料的,json字串和json物件 裡面不可以嵌有方法,如果裡面寫的有方法 就是乙個普通的物件

這六種錯誤都可以人為的丟擲

var error = new error("**錯誤了")

console.log(error);

會直接出來error

人為的例項化乙個錯誤 可以例項化建構函式

new syntaxerror("**錯誤")
每一種錯誤型別都對應了乙個建構函式,這些建構函式都可以通過例項化來輸出響應的錯誤

如果想輸出錯誤變成紅色的 使用console.error()方法

MySQL錯誤資訊

mysql的出錯 表,根據mysql的標頭檔案mysql include mysqld error.h整理而成。錯誤之處,請大家指正。1005 建立表失敗 1006 建立資料庫失敗 1007 資料庫已存在,建立資料庫失敗 1008 資料庫不存在,刪除資料庫失敗 1009 不能刪除資料庫檔案導致刪除資...

反饋錯誤資訊

即當出現錯誤 時,自動彈出我們預先設計好的反饋視窗,目的是使用者只需簡 單地按一下滑鼠就可以把反饋資訊發到你指定的信箱,當然反饋視窗的內容我們 可以任意修改設計。如下 script function errorinfo errorwin window.open width 20,height 120...

錯誤資訊介面

三 錯誤資訊介面 既然 com 是靠各種各樣的介面來提供服務的,於是很自然地就會想到,是否有乙個介面能夠提供更豐富的錯誤資訊報告那?答案是 isupporterrorinfo。下面這段 是使用 isupporterrorinfo 的一般方法 stdmethodimp c fun 上面是原理性 在我們...