• 3、javaScript语法基础(变量)


    目录

    3.3 变量 

     3.3.1 var关键字

    3.3.2 let声明 

    3.3.3 const声明 

    3.3.4 声明风格和最佳实践

     


     

    语法很大程度上借鉴了C语言以及其他类C语言,如Java(JavaScript!=Java)

    这里面主要介绍一些重要的部分

    3.3 变量 

     3.3.1 var关键字

    1. 函数级作用域
    2. 作用于提升(可以理解为在使用的函数下面定义函数所需要的变量)
    3. 重复声明不报错
    4. 全局声明的变量成为window对象的属性
    1. function text(){
    2. var msg='12345'
    3. console.log(msg)
    4. }
    5. text();

    1. function text(){
    2. var msg='12345'
    3. console.log(msg)
    4. }
    5. text();
    6. console.log(msg)

    1. function text(){
    2. var msg='12345'
    3. msg2='123456'
    4. msg3='1234567'
    5. console.log(msg+msg2+msg3)
    6. }
    7. text();

    1. var quanju="example"
    2. function text(){
    3. console.log(quanju)
    4. }
    5. text();

    3.3.2 let声明 

    1. 块级作用域
    2. 没有提升
    3. 不能重复声明
    4. 混用var和let,重复声明会报错
    5. 全局声明不是window的对象属性
    1. function text(){
    2. var name='123'
    3. let name='1234'
    4. console.log(name)
    5. }
    6. text();

    1. function text(){
    2. console.log(name)
    3. let name="123"
    4. }
    5. text();

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    6. <title>title>
    7. <script type="text/javascript">
    8. script>
    9. head>
    10. <body>
    11. <script>
    12. var age="1"
    13. let name="123";
    14. script>
    15. <script>
    16. var age="12"
    17. let name="12345";
    18. script>
    19. body>
    20. html>

     (这种错误try/catch语句或typeof操作符也不能解决)

    1. Text1(){
    2. for(var i=0;i<=5;i++){
    3. }
    4. console.log(i)
    5. }
    6. Text2(){
    7. for(let j=0;j<=5;j++){
    8. }
    9. console.log(j)
    10. }
    11. Text1();
    12. Text2();

     

    3.3.3 const声明 

    const行为与let基本上相同,唯一一个重要的区别是他声明变量时必须同时初始化变量

    1. Text(){
    2. const age=35;
    3. age=37
    4. }
    5. Text();

     

    3.3.4 声明风格和最佳实践

    1、不使用var:

    2、const优先,let次之:

    二者使变量有了明确的作用域、声明位以及不变的值

    const声明可以让浏览器运行时前置保持变量不变,也可以让静态代码分析工具提前发现不合法单位布局

     

  • 相关阅读:
    网络安全(黑客)自学
    程序的编译与链接
    Node学习笔记之MongoDB
    Swift高仿iOS网易云音乐Moya+RxSwift+Kingfisher+MVC+MVVM
    CentOS8部署Zabbix
    数学建模--智能算法之鱼群算法
    socket.error: [Errno 10049]错误
    轻量级实时跟踪算法NanoTrack在瑞芯微RK3588上的部署以及使用
    Docker基础语法学习笔记
    JavaScript运行机制与实践应用
  • 原文地址:https://blog.csdn.net/weixin_62190821/article/details/126828846