Javascript中产生固定结果的函数优化技巧_javascript技巧
分享一个Javascript编写函数的优化技巧。
适用的函数应该要满足以下条件:
产生固定结果
页面中多次调用
复杂或较耗时
代码和分析如下:
Java代码:
//产生固定结果并且在页面中多次调用的函数
function check() {
//模拟耗时操作
var begin = Date.now(); //ECMAScript5添加的,若不支持请改成 +new Date();
var ONE_SECOND = 1000,
result = false;
while(true) {
if(Date.now() - begin >= ONE_SECOND){
result = true;
break;
}
}
//函数重写,直接返回结果
check = function() {
return result;
}
return result;
}
var firstBegin = Date.now();
check(); //第一次函数调用
var firstEnd = Date.now();
check(); //第二次函数调用
var secondEnd = Date.now();
console.log("第一次函数费时:" + (firstEnd - firstBegin) + "ms.");
console.log("第二次函数费时:" + (secondEnd - firstEnd) + "ms.");
显示结果如下:


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Walaupun fungsi dan penutupan tanpa nama adalah tanpa nama dalam Go, penggunaan yang tidak wajar akan menjejaskan prestasi. Untuk mengoptimumkan penutupan, anda boleh mengelakkan salinan yang tidak diperlukan, mengurangkan bilangan pembolehubah yang ditangkap, menggunakan pengoptimum lubang intip dan inlining, dan akhirnya menentukan keberkesanan melalui ujian penanda aras.

Prestasi input dan output dalam C++ boleh dipertingkatkan melalui teknik pengoptimuman berikut: 1. Menggunakan penunjuk fail 2. Menggunakan aliran 3. Menggunakan cache 4. Mengoptimumkan operasi I/O (batch I/O, Asynchronous I/O; memori dipetakan I/O) /O).

Prestasi fungsi Go boleh dioptimumkan dengan petua berikut: Gunakan caching untuk mengelakkan pengiraan berganda. Gunakan goroutine untuk membuat pengiraan serentak untuk meningkatkan kecekapan. Gunakan kod pemasangan untuk pengiraan kritikal untuk meningkatkan prestasi. Pilih struktur data yang sesuai, seperti kepingan, peta dan saluran, untuk mengoptimumkan penyimpanan dan pengambilan data. Elakkan peruntukan memori yang tidak perlu untuk mengurangkan overhed prestasi. Fungsi yang sering dipanggil sebaris untuk mengurangkan overhed panggilan.

Fungsi boleh dioptimumkan dalam C++ untuk meningkatkan prestasi kod dan menjimatkan sumber melalui langkah seperti pengoptimuman prapemprosesan (seperti definisi makro), pengoptimuman bendera pengkompil (seperti -O2), dan pengoptimuman sebaris dan gelung. Langkah pengoptimuman khusus termasuk: 1. Gunakan arahan prapemprosesan untuk definisi makro dan prapemprosesan 2. Gunakan bendera pengkompil untuk menentukan tetapan pengoptimuman, seperti -O2. 3. Tandakan fungsi melalui kata kunci sebaris supaya ia boleh diselaraskan pada masa penyusunan; . Gunakan teknik pengoptimuman gelung seperti buka gelung dan vektorisasi gelung. Melalui pengoptimuman ini, kami boleh meningkatkan prestasi program dengan ketara.

Pustaka Numpy ialah perpustakaan pengkomputeran saintifik yang penting dalam Python Ia menyediakan objek tatasusunan berbilang dimensi yang cekap dan perpustakaan fungsi yang kaya, yang boleh membantu kami melakukan pengiraan berangka dan pemprosesan data dengan lebih cekap. Artikel ini akan memperkenalkan satu siri fungsi yang biasa digunakan dalam pustaka Numpy dan cara menggunakan fungsi ini untuk mengoptimumkan kod dan mempercepatkan pemprosesan data. Mencipta tatasusunan Fungsi penciptaan tatasusunan yang biasa kami gunakan ialah: np.array(): Menukar data input kepada objek ndarray Anda boleh menentukan kelas data tatasusunan dengan menentukan dtype.

Elakkan pengoptimuman pramatang dan fokus pada kesesakan prestasi sebenar. Sebaris berfungsi dengan berhati-hati untuk mengelakkan pembekuan kod dan masa penyusunan yang lebih lama. Ikut garis panduan ketepatan const untuk mengelakkan pengubahsuaian input/output secara tidak sengaja. Sentiasa pastikan untuk memulakan pembolehubah tempatan sebelum menggunakannya. Pertimbangkan ketekalan cache, gunakan mekanisme penyegerakan yang tidak menentu dan sesuai.

Kaedah biasa untuk pengoptimuman fungsi Go termasuk mengelakkan peruntukan yang tidak perlu dan meningkatkan prestasi melalui pengumpulan atau penggunaan semula pembolehubah. Pilih struktur data yang cekap, seperti menggunakan peta dan bukannya struct untuk meningkatkan kecekapan carian pasangan nilai kunci. Elakkan rekursi mendalam dan, jika boleh, gunakan lelaran. Menggunakan coroutine untuk pemprosesan selari boleh meningkatkan prestasi. Untuk kod yang sangat dioptimumkan, pertimbangkan untuk menggunakan pengoptimuman pemasangan sebaris pemasangan untuk memaksimumkan prestasi.

Panduan praktikal untuk mengoptimumkan kecekapan fungsi PHP: Gunakan caching fungsi (opcache) untuk menghapuskan overhed kompilasi. Kenal pasti kesesakan fungsi melalui analisis kod (Tideways/Blackfire). Pilih algoritma yang lebih cekap (carian binari/jadual cincang). Kurangkan peruntukan objek (pengiraan kumpulan objek/rujukan). Pemprosesan selari (berbilang benang/coroutine) tugasan intensif secara pengiraan. Gunakan sambungan (bcmath) untuk menyediakan pelaksanaan yang dioptimumkan.
