基础的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按照片段是执行完
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
相关阅读:
以上就是基础的JavaScript知识总结(一)的详细内容,更多请关注其它相关文章!
推荐阅读
-
android基础总结篇之二:Activity的四种launchMode
-
Java虚拟机JVM性能优化(一):JVM知识总结
-
实现一个Android锁屏App功能的难点总结
-
重装MySQL最后一步失败的完美解决方案(经验总结)
-
JavaScript基础(2)——JavaScript的数据类型
-
iOS Block深层次总结和一些经典的面试题
-
Android应用中使用Fragment组件的一些问题及解决方案总结
-
CNN中做归一化用到的相关API(自己的小总结:tf.nn.moments()函数理解) 以及CNN中NHWC转NCHW的方法
-
android基础总结篇之一:Activity生命周期
-
Android基础总结篇之三:Activity的task相关介绍