Nah, anda mungkin pernah mendengar tentang objek dalam JavaScript dan bagaimana ia penting untuk memahami bahasa tersebut.
Objek menjadikan JS sangat mudah dibaca dan berguna kerana modelnya "kunci":"nilai". Tetapi perkara yang saya ingin menonjolkan ialah bahagian "nilai" menerima bukan sahaja rentetan mudah, sebaliknya objek lain, yang seterusnya, mungkin objek lain dan sebagainya. Contohnya:
const character = { name:"Arthur Morgan", age:24, face: { hairSize:5, eyesColor: "blue", } }
Coretan ini menunjukkan bahawa wajah ialah objek dan juga watak. Tidak mengapa untuk berbuat demikian, dan banyak API kompleks berurusan dengan data seperti itu, mengumpulkan berulang kali apabila ia penting.
Tetapi kuasa sebenar objek bergantung pada fungsi, dan masalah Kod Leet ini menanganinya, serta memberi kami intipati cara perpustakaan ujian berfungsi di bawah hud. Pada asasnya anda memerlukan fungsi yang mengesahkan sama ada nilai adalah sama seperti yang dijangkakan atau tidak: toBe() dan notToBe(). Untuk berbuat demikian, kita boleh mengembalikan objek dengan fungsi tersebut. By the way, menggunakan fungsi anak panah menjadikannya lebih cantik dan langsung.
Ini jawapannya.
function expect(val) { function toBe(anotherValue) { if (val === anotherValue) { return true; } throw Error("Not Equal"); } function notToBe(anotherValue) { if (val !== anotherValue) { return true; } throw Error("Equal"); } return { toBe: (anotherValue) => toBe(anotherValue), notToBe: (anotherValue) => notToBe(anotherValue), }; }
Kita boleh melihat ia berjalan dengan pantas menggunakan objek lain: konsol terkenal dan log fungsinya.
console.log(expect(5).toBe(null)); // give us an error "Not Equal", because 5 is not null
Perhatikan bahawa fakta mengembalikan objek memberi kita kebebasan untuk menggunakan expect() dan kemudian, sejurus selepas, .toBe(). Ini kerana kami mengembalikan objek dan mengakses harta toBe dengan serta-merta, yang merupakan fungsi.
Masalah kod Leet ini ialah cara terbaik untuk melihat cara objek dan fungsi boleh berfungsi bersama dan membina bahan yang hebat dalam JavaScript. Saya harap anda suka :)
Atas ialah kandungan terperinci Tulis fungsi ujian semasa mempelajari javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!