Nice! 一图搞懂JS工作原理

找了资料,结合图文和整理。我来讲解介绍下JS的工作原理。

Javascript确实很牛X!是一门能够上天的编程语言!2019年,SpaceX 公司发射的"龙飞船"(Dragon)2 号将 JavaScript 技术带入了太空。 (图转自bytebytego,翻译整理by dogstar)

1、解释性编程语言

和编译语言不同,JavaScript由浏览器或JavaScript引擎解释执行,例如V8引擎和JIT优化技术,而不是事先编译成机器语言。这样它就可以跨平台运行。

PS:我是看大佬这本书长大的。

ES6 入门教程​

es6.ruanyifeng.com/

2、函数是一等公民

和面向对象编程OOP不同,在JavaScript世界里,函数反而是一等公民。这意味着函数可以被保存、作为参数传递,以及作为函数的结果返回。 (PS:有兴趣可以继续了解下什么是 匿名函数、闭包函数、回调函数、高阶函数,面试时我总喜欢提的问题)。

3、动态类型

既然作为一门动态语言,JS可以不必提前场景变量类型,统一用 var 或 let 或 const关键字即可,并且类型可以在运行过程中动态修改。

4、在客户端运行

JavaScript支持异步编程、文件读取、HTTP请求,以及在后台查询数据库等操作,并在完成后触发回调或promises。在Web网站 开发中特别管用,可以提高性能和用户体验。

5、基于原型的OOP

与基于类的面向对象语言不同,JavaScript使用原型进行继承。这意味着对象可以从其他对象继承属性和方法。 (PS:像Ruby这种元编程更好玩,还可以动态给自己新增方法)

6、自动回收内存

JavaScript会自动回收程序不再使用的对象占用的内存,防止内存泄漏并优化应用程序的性能。

7、对比其它语言

与Python或Java等编程语言相比,JavaScript主要用于Web网站开发。

众所周知,Python提供了良好的代码可读性和多功能性,而Java以其结构和健壮性而闻名,JavaScript是一种无需编译即可直接在浏览器上运行的解释型语言,强调灵活性和动态性。

8、和Typescript的关系

TypeScript 是JavaScript的超集,这意味着它通过向语言添加功能来扩展JavaScript,尤其是类型注释。这种关系允许任何有效的 JavaScript代码也被视为有效的TypeScript代码。 (PS:有点像 Scala/Processing语言扩展了Java一样)

TypeScript 中文网​

ts.nodejs.cn/

9、流行的Javascript框架

React 官网: React Native 以其灵活性和大量社区驱动的插件而闻名,而Vue cn.vuejs.org/ 则干净直观,具有高度集成和响应迅速的功能。另一方面,Angular Angular 中文文档 为企业级JS 开发提供了一套严格的开发规范。 (PS:还有古老的jQuery,哈哈;还有Nodejs nodejs.org/en 算不算一个;UniApp uni-app官网 也很不错

相关推荐
Red Car7 分钟前
javascript 性能优化实例一则
开发语言·javascript·ecmascript
艾小码13 分钟前
从Hello World到变量数据类型:JavaScript新手避坑指南
前端·javascript
千叶寻-1 小时前
正则表达式
前端·javascript·后端·架构·正则表达式·node.js
記億揺晃着的那天8 小时前
Vue + Element UI 表格自适应高度如何做?
javascript·vue.js·ui
GISer_Jing9 小时前
ByteDance——jy真题
前端·javascript·面试
真的想不出名儿9 小时前
Vue 中 props 传递数据的坑
前端·javascript·vue.js
阳光阴郁大boy9 小时前
星座运势网站技术解析:从零打造现代化Web应用
前端·javascript
sorryhc10 小时前
如何设计一个架构良好的前端请求库?
前端·javascript·架构
Queen_sy10 小时前
vue3 el-date-picker 日期选择器校验规则-选择日期范围不能超过七天
javascript·vue.js·elementui
lvchaoq10 小时前
react 修复403页面无法在首页跳转问题
前端·javascript·react.js