最最最基础的JavaScript(一)

写在最前面

JavaScript 是属于网络的脚本语言!JavaScript被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。

JS语言的特点

  • 解释性语言(不需要编译成文件)跨平台
  • 单线程
  • ECMA标注-为了取得技术优势微软退出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格JavaScript兼容于ECMA标准,因此也成为ECMAScript

(一)解释性语言与编译性语言的区别

  • 编译性语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。如C、C++、Delphi等
  • 解释性语言:解释型语言的程序不需要在运行前编译,在运行程序的时候才翻译,专门的解释器负责在每个语句执行的时候解释程序代码。这样解释型语言每执行一次就要翻译一次,效率比较低。如JavaScript php python等
  • java有点特殊他是先通过一个指令javac–>编译–>.class文件在通过 —>jvm虚拟机–解释执行
graph TB
    A{java文件}-->B(通过指令javac)
    B--> C[编译成.class]
    C--> D[jvm虚拟机]
    D--> E[解释执行]
    

(二)单线程

  • 单线程在程序执行时,所走的程序路径按照连续顺序排下来,前面的必须处理好,后面的才会执行。

JS的执行队列

轮转时间片:时间片轮转调度是一种最古老,最简单,最公平且使用最广的算法,又称RR调度。每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。

可以这样子说JS引擎要执行任务A或者任务B,它不会把任务A执行完之后再执行任务B,而是会把任务A和任务B切成以毫秒或者微秒为单位的片段,在把这些片段按照随机的方式进行排列(这个也叫争抢时间片),在把这些排列好的片段一个一个往JS引擎里面去送,在JS引擎以一个一个片段为基准单位去执行这个片段,把任务A和任务B按照片段是执行完

过了个年发现自己的JS基础有点松动,在腾讯课堂上面找到了一个JS的教学视频,教的蛮好的,分享给大家。重点是不要钱不要钱不要钱
附上地址:Web前端开发之JavaScript

    原文作者:StevenTang
    原文地址: https://www.jianshu.com/p/9174d27b9301
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞