Rumah  >  Artikel  >  hujung hadapan web  >  javascript函数参数、返回值和异常代码详解

javascript函数参数、返回值和异常代码详解

伊谢尔伦
伊谢尔伦asal
2017-07-25 10:46:061711semak imbas

函数参数(arguments)
    arguments并不是一个数组,只是与数组相似。arguments除了拥有length属性,数组的所有属性和方法都不具备。用arguments来实现一个累加的函数。

function sum(){
    var total = 0;
    for(var i=0; i<arguments.length; i++){ // arguments.length返回sum函数调用时传递参数的个数
        total += arguments[i];
    }
    return total;
}
alert("sum: " + sum(1, 3, 2, 4));

函数返回值(return)
    当一个函数被调用,通常会从函数的{开始执行到}结束。如果想提前结束该函数的执行可以使用return语句,此时,return语句后面的所有语句将永远不会执行。如:

function test(){
    alert("first");
    return;
    alert("second"); // 该语句永远被不会执行
}
test();
// 一个函数总是会返回值,如果没有使用return返回值,默认返回undefined。如:
function test(){
    alert("first"); 
}
alert(test()); // 输出:undefined
// 如果函数前使用new方式调用,且返回值不是一个对象,则返回this(新对象)。如:
function test(){
    alert("first");
}
var t = new test(); 
alert(typeof t); // 输出:‘object&#39;
alert(t instanceof test); // 输出:true

异常(exception)

    异常是干扰程序正常流程的非正常事故(可能人为有意的)。当检查出这样的事故,应当抛出异常。如:

function add(a, b){ // 定义一个加法函数
    // 如果传递的参数不是数字类型,则抛出一个异常信息
    if(typeof a != &#39;number&#39; || typeof b != &#39;number&#39;){
        throw {
            &#39;name&#39;  : "typeError", // 属性是自定义的,名字可以任意取
            &#39;message&#39;: "add方法必须使用数字作为参数"
        };
    }
    return a + b;
}
(function(){
    // 捕获add方法可能产生的异常
    try{
        add(10, "");
    } catch(e){ 
        // 一个try语句只有一个catch语句,如果要处理多个异常,则通过异常的name属性来区别
        // 判断异常的类型
        if(e.name === "typeError"){
            alert(e.message);
        }
    }
})();

Atas ialah kandungan terperinci javascript函数参数、返回值和异常代码详解. 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