JS函数返回值return

return 返回值:数字 字符串 布尔 函数 对象(元素 数组 json null) undefined

01:返回数字(number)

function fn1(){
     
    return 100;
}
alert(fn1());//可以理解为 fn1() = 100; 函数名称加括号等于return出来的东西

02:返回字符串(string)

 function fn2(){
     
    return 'test';
}
alert(fn2()) //test
alert(fn2().length)//5
alert(typeof fn2())//string

03:返回函数(function)

function fn3(){
     
    return function(){
     
        alert("1");//heihei
    }
}
alert(fn3());
alert(fn3()());//1
/*
    fn3() == fn(){alert("1");}
    如果药弹出里面的1
    fn3()();
*/
function fn1(a){
     
    return function(b){
     
        alert(a + b) //30
    }
}
fn1(20)(10);

03:返回对象(object)

function fn3(){
     
    return window;
}
alert(fn3());//object window
fn3().onload = function(){
     
    //document.body.innerHTML = "123"
    getId("btn1").onclick = function(){
     
        alert("1111")
    }
}
function getId(id){
     
    return document.getElementById(id);
}

04:返回数组(array)

function fn1(n){
     
    var arr = [];
    for(var i=1;i<=n;i++){
        arr.push(i);
    }
    return arr;
}
alert(fn1(8))//1,2,3,4,5,6,7,8
function fn2(n,m){
     
    var arr = [];
    var tmpArr= [n,m];//[2,5] [6,2]
    if(n < m){
        n = tmpArr[0];//2
        m = tmpArr[1];//5
    }else{
        m = tmpArr[0];//6
        n = tmpArr[1];//2
    }
    for(var i=n;i<=m;i++){
        arr.push(i);
    }
    return arr;
}
alert(fn2(2,5))//2,3,4,5
alert(fn2(6,2))//2,3,4,5,6

05:返回json

var t;
(function() {
     
    t = {
    "id":"2"};
    return t.id;
})();
alert(t.id);//2
function fn5(){
     
    var obj = {
    "id":10,"name":"simon"}
    return obj;
}
alert(fn5());//object object
alert(fn5().id)//10
alert(fn5().name)//simon

06:返回未定义(undefined)

function fn1(){
     
    return;
}
alert(fn1());//undefined 所有的函数默认返回值都是未定义
function fn2(){
     
    return 123;//return 后面跟什么样的代码都不会执行
    alert("test");
}
alert(fn2());//123

总结

01:函数名()-->xx() = return后面的值

02:所有函数默认返回值都是未定义

03:return后面任何代码都不会执行

04:oXX.onmouseout = Test; 事件调用不能加括号,一旦加上括号,就是函数名称加括号就等于函数的返回值。如果函数里没有返回值就是undefined

你可能感兴趣的:(JS学习笔记)