JS第一课(对JavaScript语言历史的认知)

简介: JS第一课(对JavaScript语言历史的认知)

JS第一课(对JavaScript语言的认识)

JS的大纲内容

第一个问题:前端的三大核心你知道多少呀?

前端开发最主要需要掌握的三个知识点:Html,Css,Js;

  1. ◦html-简单易学,掌握常用的标签即可
  2. ◦css-属性规则较多,多做练习和项目
  3. ◦js-上手容易,但是精通很难。学会它需要几分钟,掌握它需要很多年


计算机语言        

前面我们已经回顾了HTML和CSS很多相关的知识:


◦在之前我们提到过,HTML是一种标记语言,CSS是一种样式语言


他们本身都是属于计算机语言,因为都在和计算机沟通交流:


◦在生活中两个人想要沟通,必然是通过某一种语言(中/英/粤)


◦计算机语言就是我们人和计算机进行交流要学习的语言


网页的三大组成部分的另外一个核心就是Javascript: Javascript必然也是一种计算机语言;


◦JavaScript就像是给我们的网页添加上了生命和灵魂


 编程语言(Java,C,C++,Js,Python...)


事实上,JavaScript我们可以对其有更加精准的说法:  编程语言.


我们先搞清楚计算机语言和编程语言的关系:


  计算机语言:  计算机语言(computer language)指用于人和计算机之间通讯的语言,是人于计算机之间传递信息的介质。但是其概念比通用的编程语言要更广泛。例如,HTML是标记语言,但并不是编程语言。


  编程语言:编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令,一种能够让程序员准确地定义计算机所需要使用数据的计算机语言,并精确地定义在不同情况下所应采取的行动(包括我们的分支语句,循环语句)


很抽象,编程语言具备的特点:


◦数据和数据结构({},[])


◦指令及流程控制(switch/if/for/while)


◦引用机制和重用机制


◦设计哲学

第二个问题:编程语言的发展历史我们来了解一下吗?


阶段一:机器语言


◦计算机的存储单元只有0和1两种状态,一次一串代码要让计算机“读懂”,这串代码只能由0和1组成。


◦像这种有数字0和1按照一定的规律组成的代码就叫机器码,也叫二进制编码。


◦一定长度的机器码组成了机器指令,用这些机器指令编码写的程序就称为机器语言。


优点:


◦代码能被计算机直接识别,不需要经过编译解析;


◦直接对硬件产生作用,程序的执行效率非常的搞;


缺点:


◦程序全是0和1的指令代码,可读性差,还容易出错;


◦不易编写(目前没有人这样开发)

阶段二:汇编语言


◦为了解决机器语言的缺陷,人们发明了另外一种语言--汇编语言。


◦这种语言用符号来代替很长的,难以记忆的0、1代码。(mov/push指令,经过汇编器,汇编代码再进一步转成0101)


优点:


◦像机器语言一样,可以直接访问、控制计算机的各种硬件设备;


◦占用内存少,执行速度快;


缺点:


◦第一,不同的机器有不同的汇编语言语法和编译器,代码缺乏可移植性


◦也就是说,一个程序只能在一种机器上运行,换到其他机器上可能就不能运行;


◦第二,符号非常多,难记


◦即使是完成简单的功能也需要大量的汇编语言代码,很容易产生bug,难于调试;


应用场景


◦操作系统内核、驱动程序、单片机程序

阶段三:高级语言


◦最好的编程语言应该是什么?自然语言;


◦而高级语言,就是接近自然语言,更符合人类的思维方式


◦跟和人交流的方式很相似,但大多数编程语言都是国外发明的,因为都是接近于英文的交流方式


优点:


◦简单、易用、易于理解,语法和结构类似于普通英文;


◦远离对硬件的直接操作,使得一般人经过学习之后都可以编程,而不用熟悉硬件知识;


◦一个程序还可以在不同的机器上运行,具有可移植性;


缺点:


◦程序不能直接被计算机识别,需要经编译器翻译成二级制指令后,才能运行到计算机上;


◦种类繁多:Javascript、C语言、c++、c#、java、objective-c、python等;

第三个问题:  如何去了解JavaScript的编程语言呢?

首先去了解JavaScript的历史过程:跟着PPT走吧:

 

 

 

 

JavaScript组成:

标题

 

JavaScript由谁来运行:

 认识JavaScript引擎

为什么需要JavaScript引擎呢?


◦我们前面说过,高级的编程语言都是需要转成最终的机器指令来执行的;


◦事实上我们编写的JavaScript无论你交给浏览器或者Node执行,最后都是需要被CPU执行的;


◦但是CPU只认识自己的指令集,实际上是机器语言,才能被CPU所执行;


◦所以我们需要JavaScript引擎帮助我们JavaScript代码翻译成CPU指令来执行;


比较常见的JavaScript引擎有哪些呢?


◦SpiderMonkey:第一款JavaScript引擎,由Brendan Eich开发(JavaScript作者)


◦Chakra:微软开发,用于IT浏览器;


◦JavaScriptCore:Webkit的JavaScript引擎,Apple公司开发;


◦V8:Goole开发的强大JavaScript引擎,也帮助Chrome从众多浏览器中脱颖而出


◦等等..


相关文章
|
2月前
|
机器学习/深度学习 人工智能 JavaScript
js和JavaScript
js和JavaScript
21 4
|
2天前
|
JavaScript 前端开发 开发工具
【JavaScript 技术专栏】Node.js 基础与实战
【4月更文挑战第30天】本文介绍了Node.js的基础及应用,包括事件驱动的非阻塞I/O、单线程模型和模块系统。内容涵盖Node.js的安装配置、核心模块(如http、fs、path)及实战应用,如Web服务器、文件操作和实时通信。文章还讨论了Node.js的优劣势、与其他技术的结合,并通过案例分析展示项目实施流程。总结来说,Node.js是高效后端开发工具,适合构建高并发应用,其广阔的应用前景值得开发者探索。
|
3天前
|
JSON JavaScript 前端开发
深入探讨javascript的流程控制与分支结构,以及js的函数
深入探讨javascript的流程控制与分支结构,以及js的函数
|
9天前
|
JavaScript 前端开发 算法
< JavaScript小技巧:如何优雅的用【一行代码 】实现Js中的常用功能 >
在开发中,采用简洁的语法和结构,遵循一致的命名规范,具有良好的代码组织和注释,能很好的提高代码的质量。可读性:易于阅读和理解。清晰的命名、简洁的语法和良好的代码结构可以使代码的意图更加明确,降低理解代码的难度,提高代码的可读性。可维护性:易于维护。当代码逻辑清晰、结构简洁时,开发者可以更快速地定位和修复bug,进行功能扩展或修改。同时,可读性高的代码也有助于后续的代码重构和优化。可扩展性:更具有扩展性和灵活性。清晰的代码结构和简洁的代码风格使得添加新功能、修改现有功能或扩展代码更加容易。
< JavaScript小技巧:如何优雅的用【一行代码 】实现Js中的常用功能 >
|
10天前
|
JavaScript 前端开发
js开发:请解释this关键字在JavaScript中的用法。
【4月更文挑战第23天】JavaScript的this关键字根据执行环境指向不同对象:全局中指向全局对象(如window),普通函数中默认指向全局对象,作为方法调用时指向调用对象;构造函数中指向新实例,箭头函数继承所在上下文的this。可通过call、apply、bind方法显式改变this指向。
8 1
|
1月前
|
JavaScript 前端开发
JavaScript生成的随机数随机字符串JS生成的随机数随机字符串
JavaScript生成的随机数随机字符串JS生成的随机数随机字符串
16 1
|
存储 JavaScript 前端开发
JavaScript与PHP中正则
有个在线调试正则的工具,点击查看工具。下面的所有示例代码,都可以在codepen上查看到。
JavaScript与PHP中正则
|
JavaScript 前端开发 PHP
|
3天前
|
存储 移动开发 JavaScript
学习javascript,前端知识精讲,助力你轻松掌握
学习javascript,前端知识精讲,助力你轻松掌握
|
10天前
|
JavaScript 前端开发 测试技术
学习JavaScript
【4月更文挑战第23天】学习JavaScript
13 1