Pelajar yang sering menggunakan carian Baidu pastinya tidak akan mengabaikan indeks lungsur kotak input. Walau bagaimanapun, keadaan yang unik menjadikan teknologi tak segerak ini menghadapi beberapa cabaran . Jurutera pengepungan mesti mengurangkan bilangan mesej ajax sebanyak mungkin. Ia mungkin terdengar tidak relevan dengan artikel ini, tetapi tidak. Pertama sekali, mari kita buat iklan percuma untuk Baidu. Masukkan perkataan "front-end" pada halaman utama Baidu dan gunakan chromebug untuk melihat respons yang dihantar dengan mudah Hasilnya dipaparkan seperti berikut:
Baidu cuba untuk memaparkan data lungsur dengan mengembalikan kaedah sug dengan parameter obj Apabila anda memasukkan "hujung hadapan" sekali lagi tanpa memuat semula halaman, permintaan yang serupa tidak berlaku, yang menunjukkan bahawa ia adalah objek cache. boleh ditubuhkan lebih lama diminta. Pelayan menghantar permintaan, yang boleh menjimatkan kos dengan berkesan.
Mari kita bincangkan tentang protagonis sebenar: kaedah hasOwnProperty.
Saya percaya jser tidak asing dengan hasOwnProperty Saya hanya menjual air di tepi sungai di sini.
Ia eksklusif untuk objek dan digunakan untuk menentukan sama ada atribut wujud dalam kunci objek. Ia mengembalikan nilai boolean. Berikut ialah contoh:
Apabila anda mengetahui perkara ini, nampaknya ia tidak mencukupi untuk melihat kuasa hasOwnProperty, jadi mari kita buat semula contoh lungsur turun Baidu:
Sesetengah rakan sekerja mempersoalkan bahawa dengan cara ini, memori yang diduduki oleh data objek cache akan meningkat apabila lebih banyak nilai utama disimpan. Kemudian saya ingin mengatakan bahawa ini tidak dapat dielakkan Untuk menyimpan permintaan sisi pelayan, anda mesti mengorbankan perkara lain, sebenarnya, ruang yang diduduki oleh objek cache biasanya boleh diabaikan kerana ia tidak "bermastautin dalam ingatan". disegarkan, Ia akan dimusnahkan. Walau bagaimanapun, kami boleh memberikan penyelesaian lain dan bersetuju dengan nilai puncak untuk objek ini Sebagai contoh, ia hanya dibenarkan untuk menyimpan 100 pasangan nilai kunci paling banyak Apabila nombor melebihi 100, padamkan sepuluh kekunci pertama yang disimpan melalui pengendali padam atau hanya bukan penyimpanan untuk mengelakkan masalah ini.
Kaedah hasOwnProperty biasanya digunakan dalam pengesanan objek Sudah tentu, pelajar yang berminat juga boleh mempelajari kaedah propertyIsEnumerable Ia adalah versi hasOwnProperty yang dipertingkatkan dan boleh mengesan sifatnya sendiri dan kebolehhitungan harta tersebut tidak akan menerangkannya secara terperinci lagi.