JavaScript_函数、作用域

函数function

  • 格式:function 随便起一个名字(){}
  • 定义(也叫函数声明):定义一个函数可以先写一个function,函数就是另一个类型的变量。
  • 函数名起名:开发规范要求,函数名和变量名如果由多个单词拼接,必须符合小驼
    峰原则(第一个单词首字母小写,后面的首字母大写)
    function theFirstName(){}
    document.write(theFirstName);
    答案 function theFirstName(){}。打印出来的是函数体。这与 c 语言和 c++,他们打印指针,会输出指针的地址,而 js 这种弱数据语言(解释性语言)永远不输出地址,输出地址指向房间。
  • 函数表达式:1)命名表达式。var test = function abc(){ document.write('a');}
    2)匿名表达式。function test(){}

组成形式

  1. 函数名称
    function test(){}其中 function 是函数关键字,test 是函数名,必须有(){},参数可有可没有,参数是写在()括号里面的。
    如果写成 function test(a,b){},相当于隐式的在函数里面 var a,var b 申明了两个变量,()括号里面不能直接写 var。
    function test(a, b){ document.write(a + b) }
    test(1, 2)
    答案 3。上面这个例子,1 就会到 a 里面去,2 就会到 b 里面去,这是传参的形式

  2. 参数(可有可没有,但是高级编程必有)
    (1)形参(形式参数):指的是 function sum(a,b){}括号里面的 a 和 b
    (2)实参(实际参数):指的是 sum(1,2);里面的 1,2
    天生不定参,形参可以比实参多,实参也可以比形参多
    js 参数不限制位置,天生不定参数
    在每一个函数里面都有一个隐式的东西 arguments 这个是实参列表

  3. 返回值 return
    结束条件和返回值 return,return 有终止函数的功能。
    没写 return,实际上是加上了一个隐式的 return
    function sum(a, b){ console.log(‘a’); return; console.log(‘b’); }
    答案 a
    return 最常用的是返回值。本意是把一个值返回到函数以外。
    function sum(){ return 123; console.log(‘a’); } var num = sum();
    答案这里的 num 就是 123,而且 console.log(‘a’);无效,这里的 return 又终止函数,又返回变量。一般函数处理完一个参数,是为了返回。
    typeof()也是返回值,也是函数
    typeof(123)也可以写成 typeof 123【typeof 空格 123】,只是看起来不方便
    作用域初探
    作用域定义:变量(变量作用于又称上下文)和函数生效(能被访问)的区域。
    全局、局部变量。
    作用域的访问顺序。
    作用域:函数里面的可以访问外面的全局变量。
    在这里插入图片描述
    函数外面不能用函数里面的。里面的可以访问外面的,外面的不能访问里面的,彼此独立的区间不能相互访问。
    test{}和 demo{}不能互相访问,但是可以访问外面的全局变量。

    在这里插入图片描述
    彼此独立的区间不能相互访问。
    全局变量都可以访问。

function test(){
 var a =123;
 function demo(){
var b = 234;
document.write(a);
}
demo();
document.write(b);
}

上面的 document.write(b);不能访问 var b ,
上面的 document.write(a);可以访问 a
外层函数不能访问里层的,里层的可以访问外层的,越往里权限越大。

留言:欢迎各位小伙伴们的评论哈 ~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李宸净

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值