配列から文字列を削除する関数を JavaScript で記述しようとしています。配列は動的に作成され、時々新しい文字列を追加します。文字列を削除するときは、最初に文字列が本当に含まれているかどうかを確認します。
もう1つ条件があります。削除される文字列がたとえば「自転車」と等しい場合は、「バイク」もチェックし、存在する場合はそれも削除します。また、指定された文字列が「バイク」の場合、「自転車」の可能性のある出現を削除したいと考えています。
これまでのところ、次のようなものがあります。
options_array = []
function remove_option(option) {
var option_index = options_array.indexOf(option);
if(option_index != -1)
options_array.splice(option_index, 1);
if(option == 'bicycle') {
option_index = options_array.indexOf('motorbike');
if(option_index != -1)
options_array.splice(option_index, 1);
} else if(option == 'motorbike') {
option_index = options_array.indexOf('bicycle');
if(option_index != -1)
options_array.splice(option_index, 1);
}
}
それは機能しますが、より良く、よりDRYにすることは可能ですか?