JavaScript 基础笔记 3作用域

╰+攻爆jí腚メ 2022-07-14 09:25 271阅读 0赞
  1. 作用域:在一定的范围内进行读写操作
  2. 域:空间,范围,区域
  3. script里面 全局变量 全局函数 自上而下
  4. 函数:由里到外 局部可以改全局的值
  5. 作用:读,写
  6. 作用域链:函数内找不到声明顺着作用域链往上找
  7. 浏览器:
  8. "js解析器"
  9. 1)"找一些东西": var function 参数...
  10. var a=未定义; 所有的变量,在正式运行代码之前都提前赋了一个值=>undefined;
  11. 所有的函数,在正式运行代码前都是整个函数块;
  12. 以上称为"JS得预解析";
  13. 遇到重名的:只留下一个
  14. 变量和函数重名只留下函数
  15. 2)逐行解读代码:从上往下,从左到右
  16. 表达式:= + - * / % ++ -- 参数 Number()...
  17. 函数声明不是表达式
  18. 想要获取函数内的值:
  19. 可以定义一个全局变量,让全局变量等于想获取的值,然后执行函数,弹出定义的全局变量
  20. 两个函数,想调用第一个函数里的值,可以把第二个函数,在函数1里执行,把想调用的值,当成一个参数,传递到第二个函数里。
  21. alert(a); // function a (){ alert(4); }
  22. var a = 1;
  23. alert(a); // 1
  24. function a (){ alert(2); }
  25. alert(a); // 1
  26. var a = 3;
  27. alert(a); // 3
  28. function a (){ alert(4); }
  29. alert(a); // 3
  30. alert( typeof a );
  31. // a(); // 报错
  32. var a = 1;
  33. function fn1(){
  34. alert(a); // undefined
  35. var a = 2;
  36. }
  37. fn1();
  38. alert(a); // 1
  39. var a = 1;
  40. function fn1(){
  41. alert(a); // 1
  42. a = 2;
  43. }
  44. fn1();
  45. alert(a); // 2
  46. */
  47. /*
  48. var a = 1;
  49. function fn1(a){
  50. alert(a); // undefined
  51. a = 2;
  52. }
  53. fn1();
  54. alert(a); // 1
  55. var a = 1;
  56. function fn1(a){
  57. alert(a); // 1
  58. a = 2;
  59. }
  60. fn1(a);
  61. alert(a); // 1
  62. // 想要获取函数内的值:
  63. var str = '';
  64. function fn1(){
  65. var a = '大鸡腿~';
  66. str = a;
  67. }
  68. fn1();
  69. // alert( str );
  70. function fn2(){
  71. var a = '9999999克拉钻石23456789';
  72. fn3(a);
  73. }
  74. fn2();
  75. function fn3(a){
  76. alert(a);
  77. }i的取值问题
  78. window.onload = function (){
  79. var aBtn = document.getElementsByTagName('input');
  80. for( var i=0; i<aBtn.length; i++ ){
  81. aBtn[i].onclick = function (){
  82. // alert( i ); // 3
  83. for( var i=0; i<aBtn.length; i++ ){
  84. aBtn[i].style.background = 'yellow';
  85. }
  86. };
  87. }
  88. };

发表评论

表情:
评论列表 (有 0 条评论,271人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JavaScript笔记作用闭包

    启示 闭包并不是一个需要学习新的语法或模式才能使用的工具,它也不是一件必须接受像 Luke 一样的原力训练才能使用和掌握的武器。 闭包是基于词法作用域书写代码时所产生的

    相关 JavaScript笔记:词法作用

    1、词法阶段 简单地说,词法作用域就是定义在词法阶段的作用域。 后面会介绍一些欺骗词法作用域的方法,这些方法在词法分析器处理过后依然可以修改作用域,但是这种机制

    相关 JavaScript笔记作用

    1、 编译原理 尽管通常将 JavaScript 归类为“动态”或“解释执行”语言,但事实上它是一门编译语言。 在传统编译语言的流程中,程序中的一段源代码在执行之前会经

    相关 JavaScript作用

    ES5中的作用域 一、全局变量 > 全局变量有 全局作用域: 网页中所有脚本和函数均可使用 > 如果变量在函数内没有声明(没有使用 var 关键字),该变量为全