JavaScript 數字呼叫方法或者屬性

admin發表於2018-10-24

在實際應用中,直接量也可以使用方法或者屬性。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let str="antzone";
console.log(str.length);
console.log(str.charCodeAt(2));

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201810/24/193938az4kga9c0hhdg4cc.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上述程式碼還可以更加簡略一些,程式碼修改如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log("antzone".length);
console.log("antzone".charCodeAt(2));

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201810/24/194013np2sp4384cnm44q2.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

為什麼值型別資料可以使用屬性和方法呢。

這是因為首先會將值型別資料包裝成物件,然後再去呼叫這些屬性和方法。

對於數字也是如此,看一段程式碼例項:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let num=5;
console.log(num.toString());

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201810/24/194053vtmxpz26mmx6azrm.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

將數字直接量包裝為物件之後再去呼叫方法,和字串完全一樣。

是否同樣可以與字串一樣進行程式碼簡化呢,程式碼修改如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log(5.toFixed());

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201810/24/194128xzap25uexyus65zs.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

程式碼報錯,這是因為解析器會將那個點誤認為數字的小數點。

程式碼修改如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log(5 .toFixed());
console.log((5).toFixed());

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201810/24/194154ooujooymyyugh1wz.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上面兩種處理方式都可以避免報錯。

相關文章