デフォルト引数
下記のようなコードを記述したところ、IE の場合のみエラーになりました。
調べたところ、IE ではデフォルト引数が使えずエラーになるようです。
function method(item = '') {
if (item === '') {
return 'empty';
}
else {
return item;
}
}
IEユーザを考慮した場合、下記のように修正する必要があります。
デフォルト引数はやめて、最初に undefined かどうかを確認するようにします。そうすれば呼び出し元は修正する必要はなかったです。
function method(item) {
if (item === undefined) {
return 'empty';
}
if (item === '') {
return 'empty';
}
else {
return item;
}
}
StartsWith
デフォルト引数以外にも、IEで startsWith メソッドを使うとエラーになるようです。
function method(item) {
let str = 'pg-life';
return str.startsWith(item);
}
コードは増えますが、substr メソッドで代用することで対応できます。
function method(item) {
let str = 'pg-life';
return str.substr(0, item.length) === item;
}