当前位置: 首页 > news >正文

蔚县住房和城乡规划建设局网站app开发公司办公室设计

蔚县住房和城乡规划建设局网站,app开发公司办公室设计,广州哪里学网络营销比较好,哪做网站好JS的作用域 1. 全局作用域 全局作用域是在代码的任何地方都能访问到的最外层作用域。在浏览器环境下#xff0c;全局作用域就是window对象#xff0c;因此所有在全局作用域中声明的变量和函数都会成为window对象的属性和方法。 var globalVar I am global; …JS的作用域 1. 全局作用域 全局作用域是在代码的任何地方都能访问到的最外层作用域。在浏览器环境下全局作用域就是window对象因此所有在全局作用域中声明的变量和函数都会成为window对象的属性和方法。 var globalVar I am global;  function globalFunc() {  return Hello from global function;   }  console.log(window.globalVar); // 输出: I am global   console.log(globalFunc()); // 输出: Hello from global function 2. 局部作用域 局部作用域是限定在函数或代码块内部的作用域。 function myFunction() {  var localVar I am local;  function localFunc() {  return Hello from local function;  }  console.log(localVar); // 有效  console.log(localFunc()); // 有效   }  // 在这里尝试访问 localVar 或 localFunc 会导致 ReferenceError 3.块级作用域ES6 在ES6之前JavaScript只有全局作用域和函数作用域。但从ES6开始引入了let和const关键字它们声明的变量具有块级作用域即只在最近的包含块{}内有效。 if (true) {  let blockScopedVar I am block scoped;  console.log(blockScopedVar); // 有效   }  // 在这里尝试访问 blockScopedVar 会导致 ReferenceError 作用域链 当JavaScript引擎需要查找一个变量时它会从当前作用域开始查找如果没有找到就会继续向上查找父级作用域直到找到全局作用域。这个逐级向上查找的过程形成了一条作用域链。 var x 10;function outer() {var x 20;function inner() {var x 30;console.log(x); // 30}inner();console.log(x); // 20}outer();console.log(x); // 10 闭包 闭包是JavaScript中一个非常重要的概念它允许一个函数访问并操作函数外部的变量。闭包是由函数以及创建该函数的词法环境组合而成的。闭包使得内部函数能够记住并访问其词法作用域即使外部函数已经执行完毕。 function outerFunction() {  var outerVar I am outer;  function innerFunction() {  console.log(outerVar); // 访问外部函数的变量  }  return innerFunction;   }  var myClosure outerFunction();   myClosure(); // 输出: I am outer 预解析 一、预解析的定义 预解析Hoisting是JavaScript引擎的一种行为即在代码执行之前会将所有用var声明的变量和用function声明的函数提升到其所在作用域的最顶部但并不会提升变量的赋值或函数的调用。对于var声明的变量其值会被初始化为undefined对于function声明的函数其整个函数体会被提升到顶部但不会被执行。 二、预解析的类型 变量预解析 变量预解析也称为变量提升Variable Hoisting。 使用var声明的变量会在其所在作用域的最顶部被声明但赋值操作不会提升。 console.log(a); // undefined var a 1; 函数预解析 函数预解析也称为函数提升Function Hoisting 使用function声明的函数会在其所在作用域的最顶部被声明并定义但不会被调用。 console.log(fn()); // 假设fn函数有返回值   function fn() {  return 1;   } //匿名函数表达式console.log(foo); // undefinedvar foo function() {console.log(10);}//函数声明和函数//相当于执行以下代码var foo;foo(); foo function() {console.log(10);} 三、预解析的注意事项 同名变量和函数 如果存在同名的变量和函数声明函数声明会覆盖变量声明。但如果变量已经被赋值则不会被覆盖。 var fn 10;   function fn() {  console.log(hello world);   }   fn(); // TypeError: fn is not a function 函数声明的优先级 在同一作用域内函数声明的优先级高于变量声明。 console.log(fn()); // 假设fn是一个函数   var fn 10;   function fn() {  return 1;   }  // 这种情况在严格模式下会抛出SyntaxError 函数表达式不会被提升 使用函数表达式如var fn function() {...}声明的函数不会被提升。 块级作用域 在ES6及以后的版本中let和const声明的变量具有块级作用域它们不会在块外部被提升。 if (true) {  let a 1;   }   console.log(a); // ReferenceError: a is not defined
http://www.w-s-a.com/news/917855/

相关文章:

  • 如何提升网站转化率遵义市公共资源交易平台
  • 网站目录管理模板企业解决方案部
  • 建设网站上申请劳务资质吗珠海哪个公司建设网站好
  • c2c商城网站建设在微信怎么开发公众号
  • 美的公司网站建设的目的做个网站要钱吗
  • 和县建设局网站孟州网站建设
  • 网站与规划设计思路竞价培训课程
  • 网站建设设计视频专业设计企业网站
  • 湖南省建设工程网站cerntos wordpress
  • 主机屋的免费空间怎么上传网站广告公司的经营范围有哪些
  • 门户网站建设公司案例门户建设是什么意思
  • 深圳seo专家东莞网站关键词优化排名
  • 套用别人产品图片做网站如何在阿里云自主建网站
  • 网站开发需要用哪些东西wordpress页面参数
  • 大连模板网站制作哪家好wordpress 安装不上
  • 宝塔搭建网站首页图片点击率如何提高
  • 长沙找人做网站wordpress如何安装模板
  • 比较好的国外网站建设公司wordpress短代码可视化
  • 做新的网站网站个性化
  • 吉安做网站的英文网站 字体大小
  • 外贸网站服务商wordpress主题handsome
  • 云主机多个网站如何优化网站图片
  • 松江移动网站建设成都app开发制作公司
  • 锦州做网站的公司百度seo搜索营销新视角
  • 做画册找什么网站海南建设工程股份有限公司网站
  • 网站机房建设有助于网站备案
  • 北辰苏州网站建设抖音代运营投诉平台
  • 安徽住房与城乡建设部网站如何新建站点
  • 企业网站开发的感想网站开发公司所需投入资源
  • 如何拿网站后台账号wordpress 电影下载站源码