浏览器执行JS

  1. 浏览器分成两部分:渲染引擎和JS引擎

    • 渲染引擎:用来解析HTML与CSS,俗称内核,比如chrome浏览器的blink,老版本的webkit

    • JS引擎:俗称JS解析器。用来读取网页中的JS代码,对其处理后运行,比如chrome浏览器的V8

    • 【注意】

      浏览器本身并不会执行JS代码,而是通过内置JavaScript引擎来执行JS代码。JS引擎执行代码时逐行解释每一句源码,然后由计算机去执行,所以Javascript语言归为脚本语言,回逐行解释执行

  2. JS的组成

    • ECMAScript

      • JavaScript语法
      • 是由ECMA国际进行标准化的一门编程语言,这种语言在万维网上应用广泛,他往往被称为JavaScript
    • DOM
      • 页面文档对象模型
      • 通过DOM提供的接口可以对页面上的各种元素进行操作(大小位置颜色)
    • BOM
      • 浏览器对象模型
      • 通过BOM可以操作浏览器窗口,比如弹出框,控制浏览器跳转,获取分辨率
  3. js书写位置

    • 行内

    • <input type="button" value="Hello" onclick="alert('World')" />
      • 可以将单行或少量JS代码写在HTML标签的时间属性中(以on开头的属性),如:onclick
      • 注意单双引号的使用;在HTML中我们推荐使用双引号,JS中我们推荐使用单引号
      • 可读性差,在HTML中编写JS大量代码时,不方便阅读
      • 引号易错,引号多层嵌套,非常容易弄错
      • 特殊情况下使用
    • 内嵌

    • <script>
      alert('Hello World');
      </script>
      • 可以将多行JS代码写到<script> 标签中
      • 内嵌JS是学习是常用的方式
    • 外部

    • <script src="js代码路径">
      </script>
      • 利与HTML页面代码结构化,把大段JS代码独立到HTML页面之外,既美观,也方便文件级别的复用
      • 引用外部JS文件的script标签中间不可以写代码
      • 适合于JS代码量比较大的情况
  4. 注释

    • 单行注释://
    • 多行注释:/**/
  5. JavaScript输入输出语句

    方法 说明 归属
    alert(msg) 浏览器弹出警示框 浏览器
    console.log(msg) 浏览器控制台打印输出信息 浏览器
    prompt(info) 浏览器弹出输入框,用户可以输入 浏览器

l浏览器执行JS的更多相关文章

  1. 浏览器执行js代码的机制--对于我们深入了解js有很大的帮助,同时面试时候也都能用得到。

    前端小菜又来了,这些天每天工作,晚上学习太累了.趁星期天给自己放个假.写完这个博客就要出去high了.鸡冻.接下来进入正题啦, 你可能要问,我们学习这个有什么用啊?这样我先给大家来个小小的面试题. a ...

  2. 浏览器执行js

    Scriptish chrome自带 greasemonkey http://www.firefox.net.cn/forum/viewtopic.php?f=5&t=45715

  3. 浏览器中 JS 的事件循环机制

    目录 事件循环机制 宏任务与微任务 实例分析 参考 1.事件循环机制 浏览器执行JS代码大致可以分为三个步骤,而这三个步骤的往复构成了JS的事件循环机制(如图). 第一步:主线程(JS引擎线程)中执行 ...

  4. 在CMD下启动vmware、Xshell连接虚拟机以及控制Chrome浏览器自动执行js登录校园网

    标题有点长,主要是写个bat出来玩玩, (1)不用每次都手动关闭mysql服务(我不想把它设为手动启动,有强迫症) (2)然后希望每次vmware能自动连上虚拟机 (3)以及每次Xshell都能自动启 ...

  5. 浏览器中js执行机制学习笔记

    浏览器中js执行机制学习笔记 RiverSouthMan关注 0.0772019.05.15 20:56:37字数 872阅读 291 同步任务 当一个脚本第一次执行的时候,js引擎会解析这段代码,并 ...

  6. python3执行js之pyexecjs

    执行js的三种方法:1.阅读js代码,将之转成python2.找到js代码,用python第三方库执行相关代码 python2-pyv8 python3-pyexecjs3.用selenium驱动浏览 ...

  7. Python利用PyExecJS库执行JS函数

      在Web渗透流程的暴力登录场景和爬虫抓取场景中,经常会遇到一些登录表单用DES之类的加密方式来加密参数,也就是说,你不搞定这些前端加密,你的编写的脚本是不可能Login成功的.针对这个问题,现在有 ...

  8. webpack编译后的代码如何在浏览器执行

    浏览器是无法直接使用模块之间的commonjs或es6,webpack在打包时做了什么处理,才能让浏览器能够执行呢,往下看吧. 使用commonjs语法 先看下写的代码, app.js minus.j ...

  9. AngularJs中,如何在render完成之后,执行Js脚本

    AngularJs是Google开源的前端JS框架.使用AngularJs, 我们能够容易地.健壮的开发出类似于Gmail一样的单页Web应用.AngularJs这个新兴的MVC前端框架,具有以下特点 ...

随机推荐

  1. c++ LeetCode(初级数组篇)十一道算法例题代码详解(一)

    原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/10940636.html 唉!最近忙着面试找实习,然后都是面试的很多是leetcode的算法题, ...

  2. Python内部参数中对外部实参的影响

    无论函数传递的参数的可变还是不可变,只要针对参数使用赋值语句,会在函数内部修改局部变量的引用,不会影响到外部变量的引用,而如果传递的参数是可变类型,在函数内部使用方法修改了数据的内容,同样会影响到外部 ...

  3. linux中OTG识别到一个U盘后产生一个sg节点的全过程

    注:本篇文章暂时不做流程图,如果有需求后续补做. 1. 需要准备的源码文件列表: base部分: kernel\base\core.c kernel\base\bus.c kernel\base\dd ...

  4. ListenAndServe源码剖析

    使用goland追踪阅读ListenAndServe源码,剖析服务器启动流程 ListenAndServe阅读 func ListenAndServe(addr string, handler Han ...

  5. angularjs 实现猜数字大小的功能

    <body ng-app="myapp" ng-controller="myCtrl"> <h2>猜一猜,多大值?(1-1000)< ...

  6. cgo在mac上编译

    用了cgo mac上编译不过的可以试试下面的方法 ../../pkg/mod/github.com/mattn/go-sqlite3@v1.:: fatal error: 'stdlib.h' fil ...

  7. Saltstack_使用指南17_salt-ssh

    1. 主机规划 salt 版本 [root@salt100 ~]# salt --version salt (Oxygen) [root@salt100 ~]# salt-minion --versi ...

  8. InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题)

    在实际的生产中,考虑的实际情况,我们会调整一些默认配置,例如,数据目录.InfluxDB修改默认的Data目录后,因权限问题,服务无法正常运行.以下是具体的分析测试过程. 配置文件为 /etc/inf ...

  9. LRU hashMap(拉链) + 双向链表 java实现

    //基于 hash (拉链法) + 双向链表,LRUcache //若改为开放寻址,线性探测法能更好使用cpuCache public class LRU { private class Node { ...

  10. IDEA中增加日志相关的Live Templates

    1.新增一个Template Group 来将一个类型的放一起 2.在Template Group增加Live Template 这里可以分为三步 第一步填写想要看到的代码,变量部分用$paramet ...