Pengenalan kepada penggunaan atribut panjang petua JavaScript function_javascript

WBOY
Lepaskan: 2016-05-16 16:36:17
asal
1237 orang telah melayarinya

[1,2,3]. panjang dapat 3, "123" pun boleh dapat 3, semua orang yang tahu serba sedikit tentang js ini.

Tetapi apakah yang akan diperolehi eval.length, RegExp.length, "".toString.length, 1..toString.length?

Kami masing-masing mendapat 1, 2, 0, 1 Apakah yang diwakili oleh nombor ini?

Malah, panjang fungsi mendapat bilangan parameter formal.

Mari kita lihat contoh:

function test(a,b,c) {}
test.length // 3

function test(a,b,c,d) {}
test.length // 4
Salin selepas log masuk

Bukankah ia sangat mudah, tetapi terdapat juga perkara istimewa Jika parameter dipanggil melalui argumen di dalam fungsi tanpa benar-benar menentukan parameter, panjang hanya akan mendapat 0.

function test() { console.log( arguments );}
test.length // 0
Salin selepas log masuk

Fungsi ini sememangnya boleh lulus dalam parameter, dan parameter juga dipanggil secara dalaman, tetapi panjang tidak dapat mengetahui bilangan parameter yang dihantar masuk.
Bilangan parameter sebenar hanya boleh diperolehi melalui panjang argumen apabila fungsi dilaksanakan.

function test() { console.log( arguments.length );}
test(1,2,3); // 输出 3
test(1,2,3,4); // 输出 4
Salin selepas log masuk

Jadi atribut panjang fungsi hanya boleh mendapatkan bilangan parameter formalnya, tetapi bukan bilangan parameter sebenar.

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan