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

北京网站优化公司优化推广网站怎么做最好

北京网站优化公司,优化推广网站怎么做最好,浙江省建设执业注册中心网站,我想做网站卖衣服做一、JavaScript作用域 1.JavaScript作用域 ①代码名字(变量)在某个范围内起作用和效果 目的是为了提高程序的可靠性更重要的是减少命名冲突 ②js的作用域(es6)之前:全局作用域 局部作用域 ③全局作用域:整…

一、JavaScript作用域

1.JavaScript作用域

①代码名字(变量)在某个范围内起作用和效果 目的是为了提高程序的可靠性更重要的是减少命名冲突
②js的作用域(es6)之前:全局作用域 局部作用域
③全局作用域:整个script标签 或者是一个单独的js文件

var num = 10;
console.log(num);

④局部作用域(函数作用域)在函数内部就是局部作用域 这个代码的名字只在函数内部起效果和作用

function fn() {// 局部作用域var num = 20;console.log(num);
}
fn();
2.变量的作用域

根据作用域的不同我们变量分为全局变量和局部变量
①全局变量:在全局作用域下的变量 在全局下都可以使用
注意 如果在函数内部 没有声明直接赋值的变量也属于全局变量⭐⭐⭐
②局部变量 在局部作用域下的变量 后者在函数内部的变量就是 局部变量
注意 函数的形参也可以看作是局部变量
③从执行效率来看全局变量和局部变量
(1) 全局变量 只有浏览器关闭的时候才会销毁,比较占内存资源
(2) 局部变量 当我们程序执行完毕就会销毁

var num = 10;  // num 就是一个全局变量
console.log(num);  // 10function fn() {console.log(num);
}
fn();  // 10console.log(aru);  // Uncaught ReferenceError: aru is not defined
// 函数的形参也可以看作是局部变量function fun(aru) {var num1 = 10;  // num1就是局部变量  只能在函数内部使用num2 = 20;  //  如果在函数内部  没有声明直接赋值的变量也属于全局变量
}
fun();
console.log(num1);  // Uncaught ReferenceError: num1 is not defined
console.log(num2);  // 20
3.JavaScript没有块级作用域

现阶段没有,es6 的时候新增的块级作用域
块级作用域 {} if {} for {}
外面是不能调用num的

if (3 < 5) {var num = 10;
}
console.log(num);  // 10
4.作用域链

内部函数访问外部函数的变量,采取的是链式查找的方式来决定取哪个值 这种结构我们成为作用域链 就近原则

        var num = 10;function fn() {  // 外部函数var num = 20;function fun() {  // 内部函数console.log(num);}fun();}fn();  // 20
5.案例
        function f1() {var num = 123;function f2() {console.log(num);  // 站在目标出发,一层一层的往外查找}f2();}var num = 456;f1();  // 结果为:123
        var a = 1;function fn1() {var a = 2;var b = '22';fn2();function fn2() {var a = 3;fn3();function fn3() {var a = 4;console.log(a);  // a的值:?4console.log(b);  // b的值:?22                }}}fn1();

二、JavaScript预解析

1.js 引擎运行js 分为两步:预解析 代码执行

(1) 预解析 js引擎会把js 里面所有的 var 还有function 提升到当前作用域的最前面
(2) 代码执行 按照代码书写的顺序从上往下执行

2.预解析分为 变量预解析(变量提升)和函数预解析(函数提升)

(1) 变量提升 就是把所有的变量声明提升到当前的作用域最前面 不提升赋值操作
(2) 函数提升 就是把所有的函数声明提升到当前作用域的最前面 不调用函数

        // 1. 报错:Uncaught ReferenceError: num is not defined// console.log(num);// 2. undefinedconsole.log(num);var num = 10;// 相当于执行以下代码// var num;// console.log(num);// num = 10;// 3. 11fn();function fn(){console.log(11);}// 4. 报错:Uncaught TypeError: fun is not a functionfun();var fun = function() {console.log(22);}// 函数表达式  调用必须写在函数表达式下面// 相当于执行以下代码// var fun;// fun();// fun = function() {//     console.log(22);// }
案例

案列1:

        var num = 10;fun();function fun() {console.log(num);var num = 20;}  // 输出结果:undefined// 相当于执行力以下操作// var num;// function fun() {//     var num;//     console.log(num);//     num = 20;// }// num = 10;// fun();

案列2:

        var num = 10;function fn() {console.log(num);var num = 20;console.log(num);} fn();  // 输出结果为:undefined 20// 相当于执行以下代码// var num;// function fn() {//     var num;//     console.log(num);//     num = 20;//     console.log(num);// } // num = 10;// fn();

案列3:

        var a = 18;f1();function f1() {var b = 9;console.log(a);console.log(b);var a = '123';}   // 输出结果为:undefined 9// 相当于执行以下代码// var a;// function f1() {//     var b;//     var a;//     b = 9;//     console.log(a);//     console.log(b);//     a = '123';// } // a = 18;// f1();

案列4:⭐⭐⭐⭐⭐

        f1();console.log(c);console.log(b);console.log(a);function f1() {var a = b = c = 9;  // 相当于 var a = 9;  b = 9; c = 9;    b 和 c 直接赋值  没有 var 声明 当 全局变量看// 集体声明  var a = 9, b = 9, c = 9;// 未用 var 声明,也可以输出赋予的值,但是 声明变量为赋值则输出undefinedconsole.log(a);console.log(b);console.log(c);}   // 输出结果为:9  undefinded  undefinded undefinded undefinded 9  // 相当于执行以下代码function f1() {var a;a = b = c = 9;console.log(a);  // 9console.log(b);  // 9console.log(c);  // 9} f1();console.log(c);  // 9console.log(b);  // 9console.log(a);  // 报错:Uncaught ReferenceError: a is not defined
http://www.dtcms.com/wzjs/504938.html

相关文章:

  • 自己做网站建议郑州网站策划
  • 网站建设与开发 期末作品宁波seo公司网站推广
  • wordpress导入csv谷歌优化排名哪家强
  • 网站怎么做伪静态iis7.0软文推广文章
  • 如何把自己电脑做网站服务器宁波网站推广专业服务
  • 男生学平面设计好就业吗seo工资一般多少
  • 机械网站开发方案新闻早知道
  • 薅羊毛做任务赚钱网站最新推广方法
  • 做职业测评的网站盘多多网盘搜索
  • 政府网站建设的易用性网站建设深圳公司
  • 郑州网站个人开发网站推广优化方法
  • 中国的网站建设数据分析宁波网站推广怎么做
  • 响应式装饰设计公司网站源码怎么关闭seo综合查询
  • 如何自己做外贸网站友情链接的网站图片
  • 做数据权威的网站有哪些仓山区seo引擎优化软件
  • 检测网站是否为WordPress谷歌是如何运营的
  • 北京住房和城乡建设官方网站关键字搜索软件
  • 前端电商网站开发周期友情链接查询友情链接检测
  • 自动做任务赚钱的网站手机百度下载免费
  • 郑州网络兼职网站建设北京seo排名优化网站
  • 做电影网站都需要什么手续疫情二十条优化措施
  • 甘肃省酒泉市做网站公司合肥网站快速优化排名
  • 怎么做购物平台网站关键词排名技巧
  • 保定建行网站首页登录优化设计数学
  • 一台虚拟主机能建设几个网站医院线上预约
  • js弹出网站软件开发公司网站
  • 17. 整个网站建设中的关键是今日头条搜索优化
  • c 网站开发 视频教程百度广告搜索引擎
  • 深圳建网站开发费用重庆seo网站
  • 做网站需要视频衔接怎么做免费正规的接单平台