Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Bagaimana untuk memanggil fungsi dalam javascript luaran

Bagaimana untuk memanggil fungsi dalam javascript luaran

WBOY
WBOYasal
2023-05-09 11:12:072326semak imbas

Dalam pembangunan bahagian hadapan, kami sering menghadapi situasi di mana kami perlu memanggil fungsi dalam fail JavaScript luaran. Biasanya, kita boleh merujuk fungsi JavaScript luaran ke dalam halaman web melalui teg 855348821b2e8f2cc4b633bf98f064df Tetapi bagaimana jika kita mahu memanggil fungsi luaran secara dinamik dalam kod JavaScript? Artikel ini akan memperkenalkan cara memanggil fungsi dalam fail JavaScript luaran.

1. Rujukan fail JavaScript luaran

Sebelum memanggil fungsi JavaScript luaran, kami perlu merujuk fail JavaScript luaran dalam halaman web Anda boleh menggunakan kod berikut untuk memperkenalkan fail JavaScript luaran ke dalam web muka surat.

<script src="[文件路径]"></script>

Di mana [laluan fail] ialah laluan ke fail JavaScript luaran. Ambil perhatian bahawa laluan harus relatif kepada laluan halaman semasa Jika fail luaran terletak dalam direktori halaman yang sama, ia boleh dirujuk terus menggunakan nama fail.

Sebagai contoh, jika anda ingin merujuk fail JavaScript luaran bernama "script.js", anda boleh menggunakan kod berikut untuk merujuk:

<script src="script.js"></script>

2. Gunakan objek tetingkap untuk memanggil luaran functions

Selepas berjaya merujuk fail JavaScript luaran, kita boleh menggunakan objek tetingkap untuk memanggil fungsi luaran. Objek tetingkap ialah objek global, yang mengandungi semua sifat dan kaedah global, jadi anda boleh menggunakan objek tetingkap untuk memanggil fungsi luaran. Berikut ialah contoh kod menggunakan objek tetingkap untuk memanggil fungsi luaran:

//在外部函数文件script.js中定义test函数
function test(){
    alert("这是外部JavaScript文件中的test函数");
}

//在本页面中使用window对象调用test函数
window.test();

Ambil perhatian bahawa apabila menggunakan objek tetingkap untuk memanggil fungsi luaran, anda perlu memastikan bahawa fungsi itu telah ditakrifkan dan selepas merujuk fail luaran.

3. Gunakan teknologi AJAX untuk memanggil fungsi luaran

Selain menggunakan objek tetingkap untuk memanggil fungsi luaran, anda juga boleh menggunakan teknologi AJAX untuk memanggil fungsi luaran. Teknologi AJAX boleh memuatkan data secara tidak segerak untuk mengoptimumkan prestasi halaman web. Berikut ialah contoh kod yang menggunakan teknologi AJAX untuk memanggil fungsi luaran:

//使用XMLHttpRequest对象加载外部函数文件script.js 
var xhr=new XMLHttpRequest();
xhr.open('GET','script.js',true);
xhr.onreadystatechange=function(){
    if(xhr.readyState==4 && xhr.status==200){
        //将外部函数文件注入页面中
        eval(xhr.responseText);
        //调用外部函数
        test();
    }
}
xhr.send();

Dalam contoh kod ini, kami menggunakan objek XMLHttpRequest untuk memuatkan skrip fail fungsi luaran secara tidak segerak.js, kemudian gunakan fungsi eval untuk menyuntik fail ke dalam halaman, dan akhirnya Panggil fungsi luaran. Perlu diingatkan bahawa apabila menggunakan fungsi eval untuk menyuntik kod, anda perlu memastikan bahawa kod itu selamat, jika tidak, ia akan membahayakan keselamatan tapak web.

Ringkasan:

Di atas ialah kaedah memanggil fungsi dalam fail JavaScript luaran, yang boleh dicapai menggunakan objek tetingkap atau teknologi AJAX. Perlu diingatkan bahawa penggunaan teknologi AJAX yang kerap untuk memanggil fungsi luaran dalam halaman web harus dielakkan sebanyak mungkin untuk mengelakkan menjejaskan prestasi dan pengalaman pengguna halaman web. Pada masa yang sama, apabila menggunakan fungsi eval untuk menyuntik kod, anda perlu memastikan keselamatan kod tersebut.

Atas ialah kandungan terperinci Bagaimana untuk memanggil fungsi dalam javascript luaran. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn