题外话:你真的了解JS历史吗?

203 阅读5分钟

请带着问题看本篇文章:为什么需要JS(JavaScript)?

文章中夹带私货(内含大厂考题,全是干货,不要错过喔)

一、刀耕火种时代

  • 在前端刚起步时,干前端的朋友们有个亲切的称呼为:切图崽,这个时候前端还只有html、css,也就是静态的网页
  • 前端调试页面小技巧,使用背景颜色大法!!

请看操作: 1)点开前端网页,按F12,找到元素,点击样式,找到element.style,如图:

image.png 2)然后输入background:随便一个颜色,再如图: image.png 3)再点击图中位置,就可以慢慢调到搭配的背景颜色啦,而那串背景颜色的代码数字也就得到了,如图:

image.png

二、blog博客时代

  • 其显著特征便是:开始有交互了, 可以动态加载,可以提交内容
  • why?因为 js来了,孕育了前端开发,js可以调用前端API
   onclick event ,执行js
   document.getElementById('id')
  • js是天生和html,css 混在一起的弱类型、脚本语言

各位老板,请看题目1:你对html的了解有啥?(思考一下,文章最下方提供了思路)

三、移动互联网时代

  • 移动端开始适配,出现了 twitter、新浪微博、微信 ...
  • Node.js出现(一种语言 搞定两件事)

题目2:Node.js作为一种基于Chrome V8引擎的JavaScript运行环境有什么优势?

四、LLM(Large Language Model)大语言模型 AIGC(Artificial Intelligence Generated Content)时代

  • vibe coding 生成代码(用promopt 提示词编程)
  • js 和 python 一样可以做AI应用 (js还能打,牛逼的!!)

推荐应用:cursor、trae ...(值得体验)

五、AGI时代(正在步入)

  • 通用人工智能(Artificial General Intelligence)
  • 更智能的交互体验

推荐应用:Manus(我认为已经具有了通用人工智能的雏形)值得一试,要用就用最新的技术!!!

Js特性

  • 单线程模型 JavaScript采用单线程执行模型,通过事件循环机制实现异步编程。

  • 弱类型语言 JavaScript是动态类型语言,变量类型由值决定,提供了极大的灵活性。

基础技术须知(基础且重要)

  • HTTP协议

    • Browser/Server架构
    • 全称:Hyper Text Transfer Protocol(超文本传输协议)
    • WWW(万维网)的核心协议
    • 分布式特性
  • HTML5革新

    • 最新HTML版本
    • 语义化标签:header、footer、main等(比传统的div 标签更好理解html的结构和意义,更好维护,爬虫更好)
    • 更好的SEO支持(SEO即搜素引擎优化)
      1. 关键词优化
      2. 内容质量提升
      3. 技术优化(如页面加载速度、语义化标签等)
    • 更清晰的结构化文档
  • 语义化标签回顾

    • table tr td 表格
    • form input 收集用户数据
    • html,head body html 结构的
    • a 超链接
    • p div等
    • span 等文本类的

至此,请问你了解了为啥需要JS吗?(还不懂就去打螺丝吧!!!)

能进你的收藏了嘛?

答案全解:

题目1: js,html,css是什么?

按照我的理解,应该从html来讲起。html是一个标记性语言,它主要是用来定义和展示页面的结构,
而css就孕育而生,它是用来给网页的结构和元素添加样式的,使得网页具有更好的观赏和交流性。
html+css的是静态网页,只能看但是没有功能。js的功能就来了,Js 可以用来控制网页的行为,
如响应用户的输入、操作DOM(文档对象模型)、它使网页变得动态和交互性强。
而微软提出的ajax更是让js更上一层楼,那就是它可以在不进行网页刷新的情况下进行网络通信。
这一特性使得 JavaScript 成为了非常热门的前端开发语言之一。

题目2: Node.js作为一种基于Chrome V8引擎的JavaScript运行环境,具有以下优势:

跨平台运行:Node.js能在多种操作系统上运行,如Windows、Linux和Mac OS X,便于开发跨平台应用程序。
单线程事件驱动架构:Node.js使用单线程事件驱动架构,能有效处理大量并发连接,适合构建实时应用,如即时聊天服务。
异步非阻塞I/O模型:这种模型允许Node.js在处理I/O操作时不会阻塞主线程,显著提高应用程序的性能和响应能力,尤其适用于处理高并发请求。
丰富的第三方模块:Node.js拥有庞大的第三方模块生态系统,便于开发者快速构建功能强大的应用程序。
简单易学的语法:基于JavaScript,其语法简单,易于上手,有利于快速开发。
广泛的社区支持:活跃的社区提供了丰富的资源和支持,便于解决问题和优化应用程序。
高性能和轻量级:Node.js在相对较低的硬件资源上即可运行,适用于云计算和分布式系统。
统一的语言开发:前后端均使用JavaScript,降低了开发成本,提高了开发效率。