JavaScript | 青训营

39 阅读3分钟

写这篇笔记之前,我又去翻了翻我的笔记和其他的资料,翻其他资料是因为在记笔记的时候我很少会记一些概念性的内容(毕竟对敲码的帮助不大),又收获了一些其他的知识(当然也以概念性为主),那干脆趁热打铁写下来~

JavaScript简介

关于历史这些,各个语言都是,只要了解一下就可以了,图来~

image.png

JavaScript是一门解释型语言,所谓解释型值语言是指不需要被编译为机器码在执行,而是直接执行。它的源代码不是直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。由于少了编译这一步骤,所以解释型语言开发起来尤为轻松,但是解释型语言运行较慢也是它的劣势。不过解释型语言中使用了JIT技术,使得运行速度得以改善。

JavaScript还是一门动态语言,所谓的动态语言可以暂时理解为在语言中的一切内容都是不确定的。比如一个变量,这一时刻是个整型,下一时刻可能会变成字符串了。相信这一点大家都比较有体会吧,动态语言相比静态语言性能上要差一些,不过由于JavaScript中应用的JIT技术,所以JavaScript可能是运行速度最快的动态语言了。

关于DOM

在最开始,我对DOM的理解就是它相当于HTML里面的结点,但其实这两者还是有区别的

当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model),它代表页面,以便程序可以改变文档的结构、风格和内容。DOM 将文档表示为节点和对象;这样,编程语言就可以与页面交互。

网页是一个既可以在浏览器窗口中显示,也可以作为 HTML 源代码的文档。在这两种情况下,它都是同一个文档,但文档对象模型(DOM)的表示方式使它可以被操作。作为一个面向对象的网页表示,它可以用脚本语言(如 JavaScript)进行修改。不过关于使用的方式这里就不多说了,会的都会嘛

关于JSON

JSON也是老熟人了,简单方便好用,JavaScript Object Notation(JavaScript 对象标记法),它是一种存储和交换数据的语法

当数据在浏览器与服务器之间进行交换时,这些数据只能是文本,JSON 属于文本并且我们能够把任何 JavaScript 对象转换为 JSON,然后将 JSON 发送到服务器。我们也能把从服务器接收到的任何 JSON 转换为 JavaScript 对象。以这样的方式,我们能够把数据作为 JavaScript 对象来处理,无需复杂的解析和转译。

但这里我主要是想说,要注意,JSON的值不能是函数、日期或未定义(undefined)~