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

天津网站推广设计网络营销方案

天津网站推广,设计网络营销方案,wordpress 随机范围点击量,做网站赚钱吗一、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/378969.html

相关文章:

  • 学校网页网站模板免费下载全网推广怎么做
  • wordpress伪娘小说北京百度关键词优化
  • 西安做网站 好运网络上海网络营销推广外包
  • ps网站子页怎么做网络营销的目标
  • wordpress 注册码授权搜索引擎seo优化怎么做
  • 秦皇岛网站制作方案百度指数有三个功能模块
  • 做网站还要买服务器吗提升关键词排名seo软件
  • 怎么给网站做关键词郑州网络推广报价
  • 国家企业信用信息公示系统官网山东广西seo优化
  • 做的比较好的游戏网站搜索热门关键词
  • 甘肃 网站建设北京seo服务商
  • 做个网站成本广州竞价外包
  • 网站建设网页设计培训学校聊城网站推广的公司
  • 武汉人才网最新招聘快速刷排名seo软件
  • 青岐网站建设平台汨罗网站seo
  • 做淘宝网站需要多大空间中国外贸订单网
  • 开公司网站创建费用如何自己开个网站平台
  • 长安镇做网站建站模板平台
  • 济南正规网站制作怎么选择百度一下搜索引擎
  • 西部数码网站管理助手3.1网络营销主要做些什么工作
  • 怎么查网站备案的公司网络软文推广网站
  • 2008服务器做网站seo网站优化建议
  • 申请一个网页要多少钱seo优化标题
  • 拼多多卖网站建设制作网站要多少费用
  • 网站做快照免费的企业黄页网站
  • 仿腾讯网站源码网络营销技巧培训班
  • php网站开发 远程自己可以做网站推广吗
  • 微信朋友圈网站广告怎么做外贸快车
  • 无锡网站排名哪里有seo的优化方案
  • 镇江网站制作公司网页设计一般用什么软件