博主信息
博文 26
粉丝 0
评论 0
访问量 18745
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
JS中为什么不能用var && JS中变量常量与函数的声明与使用过程[有实例源码](1101)
高空中的云
原创
616人浏览过

实例演示JS中变量常量与函数的声明与使用过程

运行结果

  1. // JS中变量的声明
  2. // 常量,const PARAMNAME = value
  3. console.log("-----------常量-----------")
  4. const PARAM_CONSTANT = "这是一个常量"
  5. console.log("这个常量是:"+PARAM_CONSTANT)
  6. console.log("-----------变量--------------")
  7. //变量
  8. const param = {
  9. 'uid':1,
  10. 'username' : "test"
  11. }
  12. console.table(param)
  13. console.log("----------命名函数-------------")
  14. //命名函数
  15. function multiply(a,b){
  16. return "a*b="+a*b
  17. }
  18. console.log("命名函数结果:" + multiply(3,4))
  19. console.log("------------匿名函数-----------")
  20. // 匿名函数
  21. const multiply1 = function(a,b){
  22. return "a*b=" + a*b
  23. }
  24. console.log("匿名函数结果:"+multiply1(4,5))
  25. // 箭头函数
  26. console.log("------------箭头函数-----------")
  27. const multiply2 = (a,b)=>{
  28. return "a*b=" + a*b
  29. }
  30. console.log("箭头函数结果:"+multiply2(5,6))
  31. // 立即执行函数
  32. console.log("------------立即执行函数-----------")
  33. let res = (function(a,b){
  34. return 'a*b='+(a*b)
  35. })(20,30)
  36. console.log("立即执行函数结果是:" + res)

为什么不推荐用var

  • 声明提升:未声明可使用
  1. for(var i = 0; i<5;i++){
  2. console.log("循环第%d次\n",i)
  3. }
  4. console.log(i)
  5. /* i是在循环体定义的,for(){}语句之外,其他语言(如,c语言)会报未定义的错误.但是这里居然会打印结果.*/
  6. var param = 'Global param';
  7. function test(){
  8. console.log(param); // undefined
  9. var param = 'Local param';
  10. }
  11. test() // 打印出undefined
  12. /*
  13. 实际函数内会再添加一个自动声明的语句到console之前
  14. */
  • 重复声明:声明式更新很奇葩
    1. var a = "testvar1"
    2. var a = "testvar2"
    3. var a = "testvar3"
    4. console.log(a)
    5. /*
    6. 朴素的理解,这样应该会产生报错"重复定义",这样允许重复定义,违反常识也容易造成错误
    7. */
  • 变量泄漏
    1. {
    2. var y = 100
    3. }
    4. console.log(y) //会打印100
    5. /*
    6. 这个按照通俗理解,y是定义在代码块里的,作用域也应该仅限于代码块.但是这里却能输出,这个也会给人们带来认知的困扰和编写中的风险
    7. */
批改老师:PHPzPHPz

批改状态:合格

老师批语:完成的不错
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学