黑豹程序员-架构师学习路线图-百科:JavaScript-网页三剑客

news2024/10/6 20:39:52

文章目录

  • 1、为什么需要JavaScript
  • 2、发展历史
  • 3、什么是JavaScript
    • 3.1、JavaScript介绍
    • 3.2、JavaScript内部结构
    • 3.3、主要功能
  • 4、TypeScript

1、为什么需要JavaScript

前面我们已经了解了网页三剑客的HTML和CSS,已经明确了它们的职责。
HTML负责页面的展现,CSS负责页面的美化,它们一起实现了静态网页。
这样的网站很死板,不活跃?如何实现和用户的互动,这就需要JavaScript了。如它可以点击按钮弹出图片对话框来上传图片,它可以填写登录表单,用户名和密码进行身份验证,如它可以填写身份证,并进行格式验证,错误时提醒用户。
总之有了JavaScript,我们就可以做动态网站了。

2、发展历史

在这里插入图片描述

在这里插入图片描述

JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范(驼峰规则)也借自Java,但JavaScript的主要设计原则源自Self和Scheme。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。微软同时期也推出了JScript来迎战JavaScript的脚本语言。

发展初期,JavaScript的标准并未确定,同期有Netscape的JavaScript,微软的JScript和CEnvi的ScriptEase三足鼎立。

1997年,在ECMA的协调下,由Netscape、Sun、微软、Borland组成的工作组确定统一标准:ECMA-262。
完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型DOM,浏览器对象模型BOM。

3、什么是JavaScript

3.1、JavaScript介绍

JavaScript(简称“JS”)是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式。

3.2、JavaScript内部结构

在这里插入图片描述

  1. ECMAScript,描述了该语言的语法和基本对象。
  2. 文档对象模型(DOM:Document Object Model),描述处理网页内容的方法和接口。
  3. 浏览器对象模型(BOM:Browser Object Model ),描述与浏览器进行交互的方法和接口。

在这里插入图片描述

3.3、主要功能

嵌入动态文本于HTML页面。
对浏览器事件做出响应。
读写HTML元素。
在数据被提交到服务器之前验证数据。
检测访客的浏览器信息,是IE浏览器?还是谷歌浏览器等?
控制Cookies,包括创建和修改等。
基于Node.js技术进行服务器端编程。

4、TypeScript

C、Java我们都称作强语言,无所不能。而JavaScript我们称为脚本语言,它被束缚限定只能在浏览器下工作。这点是天然的缺陷,让JavaScript的发展受限。在开发鄙视链中,它只能在角落中,但随着B/S程序的兴盛,其它语言在这块无法替代JavaScript。而且随着大前端的兴起,它也飞速的发展,从语言进阶到框架(Angular、React、Vue),从弱语言(JavaScript)进阶到强语言(TypeScript)。

TypeScript 起源于使用JavaScript开发的大型项目 。由于JavaScript语言本身的局限性,难以胜任大型项目的开发和维护。因此微软开发了TypeScript ,使得其能够胜任大型项目的开发。

TypeScript的作者是安德斯·海尔斯伯格,C#的首席架构师。
它是开源和跨平台的编程语言。它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。
在这里插入图片描述

TypeScript扩展了JavaScript的语法,所以任何现有的JavaScript程序可以运行在TypeScript环境中。TypeScript是为大型应用的开发而设计,并且可以编译为JavaScript。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1062410.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java】cron表达式

文章目录 1、语法2、取值3、cron表达式生成工具 定时任务相关的需求很多,对应的实现技术与框架也有不少,例如xxl-job、Quartz、Spring Task。不论怎么技术选型,cron表达式通常都是必要的。虽然现在生成cron表达式的小工具网站很多&#xff0c…

从某达OA到Yii2框架的cookie反序列化漏洞研究

序言 近期网上流传的某达OA存在PHP反序列化漏洞,导致命令执行。因为该漏洞底层是Yii2框架的漏洞,所以搭建好了Yii2框架环境,在Yii2框架的环境下来进行模拟研究,希望能达到举一反三和类比分析学习的目的。该cookie处反序列化漏洞属…

VBA技术资料MF66:使用代码插入行或列

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到…

LangChain 用例(未完)

在Azure上的OpenAI端点 注意 OpenAI key 可以用微软 用例【1. 嵌入 ,2. 问答】 1. import os import openai from langchain.embeddings import OpenAIEmbeddings os.environ["OPENAI_API_KEY"] "****" # Azure 的密钥 os.environ["OP…

[ 车牌识别 License Plate Detection and Recognition ]

从0到1 视频讲解:图像处理和模式识别案例-一个简单的车牌识别系统 车牌识别 整体流程可以分成三个部分, (1) 车牌定位/检测; (2) 字符分割; (3) 字符识别。 它们各自发展出很多方法以应对不同的情况。 下面用一种完整的技术路线…

Java循环结构:一件事重复做才能有效果。

👑专栏内容:Java⛪个人主页:子夜的星的主页💕座右铭:前路未远,步履不停 目录 一、while循环1、基本语法2、注意事项3、break语句4、continue语句 二、do-while循环三、for循环1、基本语法2、注意事项 四、循…

kafka集群工作机制

一、kafka在zookeeper上的元数据解释 kafka中的broker要选举Controller角色来管理整个kafka集群中的分区和副本状态。一个Topic下多个partition要选举Leader角色和客户端进行交互数据 Zookeeper客户端工具: prettyZoo。 下载地址:https://github.com/vr…

单调队列---数据结构与算法

简介 队列也是一种受限制的线性表和栈相类似,栈是先进后出,而队列是先进先出,就好像一没有底的桶,往里面放东西,如图 在这里也是用数组来实现队列,用数组实现的叫做顺序队列 队列的数组模拟 const int N…

网络安全的发展方向是什么?网络安全学什么内容

前言 不少小伙伴开始学习网络安全技术,但却不知道学习网络安全能找什么工作?网络安全是现下较为火热的职业岗位,吸引了许多企业和个人对网络安全技术的青睐。学习网络安全的人越来越多,网络安全也有很多发展方向。那么如何选择网…

mysql日期月份相关函数

从给定日期提取最后一天: 要知道2017年12月的最后日期,可以按以下方式执行LAST_DAY()函数:用法:输出: 2017-12-31 从给定的日期时间中提取最后一天: 要使用日期时间格式了解月份的最后日期,可以按以下方式…

目标检测算法改进系列之Backbone替换为NextViT

NextViT介绍 由于复杂的注意力机制和模型设计,大多数现有的视觉Transformer(ViTs)在现实的工业部署场景中不能像卷积神经网络(CNNs)那样高效地执行,例如TensorRT 和 CoreML。这带来了一个明显的挑战&#…

Html+Css+Js计算时间差,返回相差的天/时/分/秒(从未来的一个日期时间到当前日期时间的差)。

Html部分 <!DOCTYPE html> <html><head><meta charset"utf-8" /><title></title><link rel"stylesheet" type"text/css" href"css/index.css" /><script src"js/index.js" t…

库函数的模拟实现

前言&#xff1a; 在上一篇文章中我们了解到了一些库函数的使用&#xff0c;为了加深我们对库函数的理解&#xff0c;我们来模拟实现一下这些库函数的用法。 这是上一篇文章的链接&#xff1a; http://t.csdnimg.cn/r7SKNhttp://t.csdnimg.cn/r7SKN 1.模拟实现strlen 模拟…

【C++】运算符重载 ⑥ ( 一元运算符重载 | 后置运算符重载 | 前置运算符重载 与 后置运算符重载 的区别 | 后置运算符重载添加 int 占位参数 )

文章目录 一、后置运算符重载1、前置运算符重载 与 后置运算符重载 的区别2、后置运算符重载添加 int 占位参数 上 2 2 2 篇博客 【C】运算符重载 ④ ( 一元运算符重载 | 使用 全局函数 实现 前置 自增运算符重载 | 使用 全局函数 实现 前置 - - 自减运算符重载 )【C】运算符…

算法题:盛最多水的容器

这个题目乍一看就是双指针&#xff0c;没想到官方解答也是双指针&#xff0c;我在官方的基础上优化了一下下&#xff0c;左右两边各一个指针&#xff0c;每次移动短的那一头的时候&#xff0c;不是移动一格&#xff0c;而是找到比短的那一头要长一点的&#xff0c;再进行比较。…

文心一言 VS 讯飞星火 VS chatgpt (106)-- 算法导论10.1 4题

四、用go语言&#xff0c;重写 ENQUEUE 和 DEQUEUE 的代码&#xff0c;使之能处理队列的下溢和上溢。 文心一言&#xff1a; 在 Go 语言中&#xff0c;我们可以使用切片来实现队列。下面是如何实现 ENQUEUE 和 DEQUEUE 操作&#xff0c;同时处理队列的下溢和上溢的情况&#…

坦克世界WOT知识图谱三部曲之爬虫篇

文章目录 关于坦克世界1. 爬虫任务2. 获取坦克列表3. 获取坦克具体信息结束语 关于坦克世界 《坦克世界》(World of Tanks, WOT)是我在本科期间玩过的一款战争网游&#xff0c;由Wargaming公司研发。2010年10月30日在俄罗斯首发&#xff0c;2011年4月12日在北美和欧洲推出&…

目标检测算法改进系列之Backbone替换为RepViT

RepViT简介 轻量级模型研究一直是计算机视觉任务中的一个焦点&#xff0c;其目标是在降低计算成本的同时达到优秀的性能。轻量级模型与资源受限的移动设备尤其相关&#xff0c;使得视觉模型的边缘部署成为可能。在过去十年中&#xff0c;研究人员主要关注轻量级卷积神经网络&a…

整体网络架构p22

1. 两次卷积&#xff0c;一次池化。得到一个三维特征图&#xff0c;然后让三维的特征图&#xff0c;三个值进行相乘拉成特征向量&#xff0c;把得到的结果需要靠全连接层。 带参数计算才算一层 算conv的个数FC全连接层就得到卷积神经网络的层数 FC:全连接层 2. 3.reset网络&a…

连接查询-多表联合查

一、连接查询的分类 根据表的连接方式&#xff0c;连接查询分为内连接、外连接和全连接。 内连接&#xff1a; 等值连接非等值连接自连接外连接&#xff1a; 左外连接&#xff08;左连接&#xff09;右外连接&#xff08;右连接&#xff09; 全连接 二、笛卡尔积 交叉连接也…