【TypeScript】lengthがエラーになった場合の対処方法
TypeScript

【TypeScript】lengthがエラーになった場合の対処方法

作成日:2021年08月11日
更新日:2021年08月11日

配列の中身がいくつあるかを調べたいので、length を使った関数を作ります。

ts
function errorMessage<T>(message: T) {
let messageText = "";
if (message.length === 0) {
messageText = "一つもありません。";
} else if (message.length > 0) {
messageText = message.length + "つあります。";
}
return [message, messageText];
}

すると、

image2

エラーが発生し、『プロパティ 'length' は型 'T' に存在しません。』と指摘されました。

こちらを解消するには、拡張機能でlengthを型指定します。

ts
type Length = {
length: number;
};
function errorMessage<T extends Length>(message: T) {
let messageText = "";
if (message.length === 0) {
messageText = "一つもありません。";
} else if (message.length > 0) {
messageText = message.length + "つあります。";
}
return [message, messageText];
}

image3

エラーがなくなりました。

console.logで確認すると、

image4

配列の中身と『3 つあります。』が出てきました。

© 2024あずきぱんウェブスタジオ