javascript エラー「Uncaught TypeError: xxx.slice is not a function」の解決方法
- 作成日 2022.12.02
- javascript
- javascript

javascriptで、エラー「Uncaught TypeError: xxx.slice is not a function」が発生した場合の原因と解決方法を記述してます。「文字列」か「配列」以外に「slice」を使用した場合に発生します。
環境
- OS windows11 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 107.0.5304.122
エラー内容
以下の、コードにて発生。
const num = 1111;
const result = num.slice(2);
エラーメッセージ
Uncaught TypeError: num.slice is not a function
画像

firefox105の場合でも同じエラーが発生します。
Uncaught TypeError: num.slice is not a function
画像

safari15.5では、以下のエラーとなります。
TypeError: num.slice is not a function. (In 'num.slice(2)', 'num.slice' is undefined)
画像

原因
「slice」は、文字列か配列にしか使用できないため
解決方法
「文字列」に変換して使用するか、
const num = 1234;
const result = num.toString().slice(2);
console.log( result ); // 34
「文字列」か「配列」であるかを判定してから使用する
const num = 1234;
if(typeof num === 'string' || Array.isArray(num)){
const result = num.slice(2);
}
-
前の記事
mac 大きな文字を出力する 2022.12.01
-
次の記事
sakuraエディタ 印刷プレビューを表示するショートカットキー 2022.12.02
コメントを書く