JavaScript简介

JavaScript简介

前言

首先,JavaScript和Java语言没有任何技术上的关联,尽管在某些概念和使用逻辑上有部分相同(都是应用在计算机系统上的编程语言,最底层的结构和内部逻辑甚至是语法逻辑肯定有相同的地方),但仍旧没什么关系。

如果硬要说关系的话就是蹭热度的关系。JavaScript最早的名字叫做LiveScript,当时的Java语言虽然进入了一段低谷期,但是瘦死的骆驼比马大,市场依旧比JavaScript良好。由于在市场推广策略的原因,这两个语言就开始了联合推广:LiveScript更名为JavaScript(其实是Script和Sun公司合作,迫不得已的改名),蹭到了热度的Script开始从低谷期逐渐攀升的趋势,所以这个名字就一直流传下来。

相关概念简介

浏览器简介

浏览器的种类在此不做赘述,主要说明浏览器的组成部分:

  • shell:外壳,单纯的理解为展示出来的部分;
  • 内核:
    • 渲染引擎(绘制):这一部分只要是识别前端网页语法(HTML、CSS等),然后将网页渲染(绘制)在浏览器页面上,最终展示给用户;
    • js引擎:负责解析JavaScript语言的引擎;
    • 其他模块:……。

浏览器内核

首先列举一下市场上的主流浏览器:

主流浏览器内核
IEtrident
Chromewebkit/blink
FireFoxGecko
Operapresto
Safariwebkit

JavaScript语言简介

JavaScript语言属于解释性语言(即:不需要编译成可执行文件),例如:Java语言运行在JVM中,这种情况只需要将Java语言解释成为JVM可以运行的文件就可以。

【注】:Java语言是编译-解释型语言,在此仅将Java语言中的解释性概念进行说明。

接下来说明两种语言类型的对比:

  • 编译:
    • 优点:快(整体编译后在执行);
    • 不足:移植性较差。
  • 解释:
    • 优点:支持跨平台(会被解释为机器码直接在计算机中运行);
    • 不足:稍微慢一些(在大型项目中可能会有体现)。

我们所熟知的Java语言并不属于这两种语言类型之一,它属于编译-解释型语言

首先,Java语言会通过命令javac将文件编译成为.class文件;然后在通过JVM(Java虚拟机)将.class文件解释为机器码,直接在计算机中运行。

JavaScript语言还有一点需要注意, 它是单线程执行的。具体什么是单线程、多线程,甚至是线程,大家可以去看我的Java线程笔记,链接如下:

JavaSE进阶(一)——多线程概述

至于我们在后续使用JavaScript制作的一些小案例中可能会出现很多同时运行的模块,貌似违反了JavaScript单线程的特性,但实际上并没有。CPU处理计算机指令的速度很快(具体有多快就不详细说明了),他可以在单位时间内多次切换处理不同的命令,而由于切换的速度太快,我们的肉眼是反应不过来的,所以感觉上像是在同时进行,然而实际上CPU在一个时间点只能处理一个命令。

现在的JavaScript语言一共包括三个部分,具体如下:

  • ecmascript:属于JavaScript原生的部分,只能完成一些数据类型的定义(对象也是数据类型)以及数据的处理;
  • DOM:操作文档的(比如页面中的HTML代码和CSS的样式代码),是由浏览器提供的部分;
  • BOM:是用来操作浏览器的部分。

总结

本篇笔记仅记录了JavaScript基础认知的一些概念,在未来工作的时候可能一毛都用不上,不过面试过程中,尤其是一面(海选)的时候会问一些平时我们不注意的知识点来淘汰一些仅仅会使用JavaScript语言做开发的同学,二面(复试/笔试)的时候会把一些什么都不会,只是背过面试宝典的同学淘汰掉。

说一点题外话,其实小厂都只是需要一些会做开发的,至于你对知识点领悟到什么深度,他们不感兴趣,反正大多数应届生几年内只能做码农,所以大多数小厂的一面(海选)都是很恶心的,非得问一些和工作一分钱关系都没有的知识点边栏,美其名曰:看重你的学习能力以及未来发展目标的明确程度,其实就是又当又立。小厂都知道:一般应届生不可能在小厂待很久,一有机会就想着冲进大厂或者跳槽去其他公司,因为他们没有能留住人的福利待遇和长久的技术发展,所谓的公司人才培养云云都是画大饼,所以同学们要有选择的实习和入职。

应届生找工作最好是找到入职开始会有较长时间的人才培养(一般为半个月到一个月的时间,当然是免费的那种),这样的公司有一定的自信可以把你留下来,同时也是真的想让你在短时间内有较快的成长(公司都不在乎每个月给你发工资让你带薪学习,你还怕它给不了你想要的福利待遇?)。

当然,找工作的时候不单单只看这一方面,还有一些细节方面需要注意,在此不做赘述。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值