zoukankan      html  css  js  c++  java
  • js代码的执行顺序及运算

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

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

      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

  • 相关阅读:
    解决Maven关于本地jar包的打包处理
    微信公众帐号应用开发—本地调试
    字符串
    动态类型
    数字
    React文档(二十四)高阶组件
    React文档(二十三)Web Components
    React文档(二十二)context
    React文档(二十一)协调
    React文档(二十)不使用JSX
  • 原文地址:https://www.cnblogs.com/shangjun6/p/9791786.html
Copyright © 2011-2022 走看看