- eval()関数を使用する方法: eval()関数は、与えられた文字列をJavaScriptコードとして評価します。関数名を文字列として渡すことで、その関数を呼び出すことができます。ただし、eval()関数はセキュリティ上のリスクがあるため、注意が必要です。
const functionName = 'myFunction';
eval(functionName + '()');
function myFunction() {
console.log('関数が呼び出されました。');
}
- オブジェクトプロパティを使用する方法: 関数がオブジェクトのプロパティとして定義されている場合、オブジェクトのプロパティとしてアクセスし、関数を呼び出すことができます。
const obj = {
myFunction: function() {
console.log('関数が呼び出されました。');
}
};
const functionName = 'myFunction';
obj[functionName]();
- windowオブジェクトを使用する方法: グローバルスコープで定義された関数は、windowオブジェクトのプロパティとしても利用可能です。関数名を文字列として渡し、windowオブジェクトのプロパティとしてアクセスすることで関数を呼び出すことができます。
const functionName = 'myFunction';
function myFunction() {
console.log('関数が呼び出されました。');
}
window[functionName]();
以上が、JavaScriptで文字列名を使用して関数を呼び出すいくつかの方法です。ただし、eval()関数の使用はセキュリティ上のリスクがあるため、注意が必要です。適切な方法を選択し、コードの安全性を確保してください。