代码执行顺序:从上往下,一行一行的执行(也叫一个模块一个模块的执行)

  变量的提升(它不是变量的功能,而是浏览器的功能)

  js代码如何执行?

  js代码执行前,浏览器会给他一个全局的环境 叫window,在window(全局作用域)下浏览器找到所有的带var和function的关键字,然后他们分配内存的地址,不管你赋值没赋值,浏览器告诉所有的子模块,这个东西存在了,这种能力叫变量提升。

  对变量定义的方式

  一个是定义的常量var

  一个是定义的方法function

  我们的载体是浏览器

  计算机通过地址查找的

  数据

  变量的值    一个是字符串 (带引号)

       一个是数字(不带引号)

  不管是数字还是字符串,后面的值统统称为数据

  js数据类型有( 跟变量的值有关)

  字符串  数字  数组  json  对象  布尔  null  undefined  函数  (分为两大块 基本和复和)

  运算

  1.四则运算 (加,减,乘,除)法则(先乘除 后加减  有括号先算括号里面的)

  2.逻辑运算: 或(||) 且(&&)   非(!)   其结果是布尔    (值为ture 和false 只有对与错)

  a 或 b ( a也行  ,b也行)

  a 且 b    (a和b)

  a 非 b    (不是a就是b)

  3.比较运算  >  、 >=   、  <    、   <=     !(取反)

  ==(双等号    就是所谓的等号)因为“=”是赋值   ===(全等)数据类型和值都一样    !==(不全等于)

  ==也有隐式转换的能力

  function  会有一个子模块 内部可以用外部,外部不可以用内部

  解释console.log(a)      结果为undefined    ?

    var a="hello world"

  js代码执行前浏览器会给一个全局作用域(window)

  window分两种模块   一个是储存模块   一个是执行模块

  储存模块找到所有的  var  function的关键字 给这些变量添加内存地址

  执行模块代码从上到下执行,遇到变量 就会去储存模块查找有没有赋值  赋值了就是后面的值   没有赋值就是undefined  没有结果就是  (is not undefined)

  注意储存模块没有赋值的情况

  通俗讲 没定义 (var  function)为 is not undefined

     没赋值   (以上列将a="")undefined

js代码的执行顺序及运算的更多相关文章

  1. php课程 1-3 web项目中php、html、js代码的执行顺序是怎样的(详解)

    php课程 1-3 web项目中php.html.js代码的执行顺序是怎样的(详解) 一.总结 一句话总结:b/s结构 总是先执行服务器端的先.js是客户端脚本 ,是最后执行的.所以肯定是php先执行 ...

  2. Promise对象及它在js中的执行顺序

    关于Promise对象的学习及它的执行顺序 学习阮一峰老师的ES6入门后的记录 1.promise的定义 promise是一个对象,通常包裹着一个异步操作,promise对象提供一些接口的方法,返回一 ...

  3. 通过指令码来判断Java代码的执行顺序(++问题与return和finally的问题)

    问题 在<深入理解Java虚拟机>一书中遇到了如下代码: public int method() { int i; try { i = 1; return i; } catch (Exce ...

  4. java代码块执行顺序

    父类 public class Father { public Father() { System.out.println("父类构造PUBLIC father"); } stat ...

  5. 2018.11.20-day22 类中代码的执行顺序&组合

    1.类中代码的执行顺序 2.组合

  6. Java基础系列5:Java代码的执行顺序

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 一.构造方法 构造方 ...

  7. Java:面向对象(继承,方法的重写(overide),super,object类及object类中方法的重写,父子类代码块执行顺序)

    继承: 1.继承是对某一匹类的抽象,从而实现对现实世界更好的建模. 2.提高代码的复用性. 3.extends(扩展),子类是父类的扩展. 4.子类继承父类可以得到父类的全部属性和方法.(除了父类的构 ...

  8. Java——Java代码的执行顺序

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 一.构造方法 构造方 ...

  9. 创建HttpFilter与理解多个Filter代码的执行顺序

    1.自定义的HttpFilter,实现Filter接口 HttpFilter package com.aff.filter; import java.io.IOException; import ja ...

随机推荐

  1. SharePoint场管理-PowerShell(一)

    1. 查看场配置信息 Get-SPFarmConfig 2. 设置场配置信息 Set-SPFarmConfig –ASPScriptOptimizationEnabled:$true –DataFor ...

  2. Kali Linux更新源以及设置中文

    在终端输入 gedit /etc/apt/sources.list 复制下列源替换原有的 #官方源 deb http://http.kali.org/kali sana main non-free c ...

  3. 转:AMD规范与CMD规范的区别是什么?

    AMD规范与CMD规范的区别是什么?    在比较之前,我们得先来了解下什么是AMD规范?什么是CMD规范?当然先申明一下,我个人也是总结下而已,也是网上看到的资料,自己总结下或者可以说整理下而已,供 ...

  4. lintcode 刷题 by python 总结(1)

    博主之前在学习 python 的数据结构与算法的基础知识,用的是<problem-solving-with-algorithms-and-data-structure-using-python& ...

  5. Magento里显示指定分类的所有子分类

    如何在magento左侧导航栏里显示父分类和子分类名,如果需要在magento显示指定分类的所有子分类,可以用以下的方法: <!--? php   if($category--->hasC ...

  6. C高级第一次PTA作业

    作业要求一 附加题目 写程序证明P++等价于(p)++还是等价于*(p++)? 1.设计思路: (1).题目算法描述 第一步:定义变量p并赋初值 第二步:分三次计算每次分别输出 p++,(p)++,* ...

  7. Visual Studio 2015 编译错误 File 的值+乱码的解决方法

    ======================================== VS2015调试项目时,会报莫名奇妙的错误,如下图所示: 程序编译,提示有错误:Visual Studio 2015 ...

  8. CTF之常见的两种关于word的信息隐藏技术

    一.利用word本身自带的文字隐藏功能 1.在word中输入文字 2.选中文字,单击右键,选择字体选项 3.单击字体选项后,单击隐藏,确定 查找隐藏信息 1.单击左上角WPS文字后,选择选项按钮单击 ...

  9. hdu1208 dp

    题意:给了一个 n * n 的方格图,要从图的左上角走到右下角 ,每次只能向右或者向下走,走的格数为当前格子上的数字,问共有多少中走法. 一开始我看到之后觉得这题完全可以用记忆化搜索来做,dfs 一遍 ...

  10. 【HAOI2010】订货

    可以DP也可以是费用流,然而被我用非常简单的DP破了[开心] 原题: 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付存贮费用m,假定 ...