01初识JavaScript
技术交流QQ群:1027579432,欢迎你的加入!
1.JavaScript历史
- 布兰登-艾奇(Brendan Eich,1961年-);
- 他在1995年利用10天时间完成JavaScript设计;
- 网景公司最初命名为LiveScript,后来在与Sun合作之后将其改名为JavaScript;
2.JavaScript是什么
- JavaScript是世界上最流行的语言之一,是一种运行在客户端的脚本语言;
- 脚本语言:不需要编译,运行过程由js解释器(js引擎)逐行来进行解释并执行;
- 现在也可以基于Node.js技术进行服务端编程。
3.JavaScript的作用
- 表单动态校验(密码强度检测)(JS产生的最初目的)
- 网页特效
- 服务端开发(Node.js)
- 桌面程序(Electron)
- App(Cordova)
- 控制硬件-物联网(Ruff)
- 游戏开发(cocos2d-js)
4.HTML/CSS/JS之间的关系
- HTML/JSS标记语言–描述类语言
- HTML决定网页结构和内容(决定看到什么),相当于人的身体;
- CSS决定网页呈现给用户的模样(决定好不好看),相当于给人穿衣服、化妆;
- JS脚本语言–编程类语言
- 实现业务逻辑个页面控制(决定功能),相当于人的各种动作。
5.浏览器执行JS代码的流程
- 浏览器分成两大部分组成:渲染引擎和JS引擎;
- 渲染引擎:用来解析HTML和CSS,俗称内核。比如chrome浏览器的blink,老版本的webkit;
- JS引擎:也称为JS解释器。用来读取网页中的JavaScript代码,对其处理后再运行,比如chrome浏览器的V8。
- 浏览器本身并不会去执行JS代码,而是通过内置javascript引擎(解释器)来执行JS代码。JS引擎执行代码时,逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所以javascript语言归结为脚本语言,会逐行解释并执行。
6.JS的组成
6.1 ECMAScript
- ECMAScript是由ECMA国际(原欧洲计算机制造商会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往也被称为JavaScript或JScript,但实际上后两者是ECMAScript语言的实现和扩展。
- ECMAScript:ECMAScript规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准。
6.2 DOM–文档对象模型
- 文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过DOM提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。
6.3 BOM–浏览器对象模型
- BOM(Browser Object Model,简称BOM)是浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
7.JS初体验
- JS有3种书写位置,分别为行内、内嵌和外部。
- 行内式的JS
- 可以单行或少量JS代码写在HTML标签的事件属性中(以on开头的属性),比如:onclick;
- 注意单双引号的使用:在HTML中我们推荐使用双引号,在JS中我们推荐使用单引号;
- 可读性差,在HTML中编写大量JS代码时,不方便阅读;
- 引号易错,引号多层嵌套匹配时,非常容易弄混;
- 特殊情况下使用!
<!-- 1.行内式的js,直接写到元素的内部 -->
<input type="button" value="唐伯虎" onclick="alert('秋香姐')">
- 内嵌式的JS
- 可以将多行JS代码写到<script>标签中;
- 内嵌式的JS是学习时经常用到的方式;
<script>alert('我是你爸爸,哈哈');alert('我是你爸爸,哈哈');
</script>
- 外部式的JS
- 利用HTML页面代码结构化,把大段JS代码独立到HTML页面之外,既美观也方便文件级别的复用;
- 引用外部JS文件的script标签中间不可以写代码;
- 适合于JS代码量比较大的情况;
<!-- 3.外部的js script是双标签-->
<script src="01_my.js"></script>
8. JS中的注释
<script>// 1.单行注释 ctrl + //* 2.多行注释 默认的快捷键: shift + alt + a2.多行注释 vscode中修改多行注释的快捷键:ctrl + shift + /*/
</script>
9. JavaScript中的输入和输出语句
- 为了方便信息的输入和输出,JS中提供了一些输入和输出语句,其常用的语句如下:
10.资料下载
- 笔记及代码,欢迎star,follow,fork…
01初识JavaScript相关推荐
- 初识JavaScript(二)
初识JavaScript(二) 我从上一篇<初识JavaScript(一)>知道和认识JavaScript的词法结构,也开始慢慢接触到了JavaScript的使用方法,是必须按照JavaS ...
- JavaScript入门(part1)--初识JavaScript
学习笔记,仅供参考,有错必纠 参考自:pink老师教案 文章目录 JavaScript入门 初识JavaScript JavaScript 是什么 JavaScript的作用 浏览器执行JS简介 JS ...
- day24 01 初识继承
day24 01 初识继承 面向对象的三大特性:继承,多态,封装 一.继承的概念 继承:是一种创建新类的方式,新建的类可以继承一个或者多个父类,父类又可称基类或超类,新建的类称为派生类或者子类 cla ...
- JavaScript(一)—— 初识JavaScript/注释/输入输出语句/变量/数据类型
本篇为 JavaScript 系列笔记第一篇,将陆续更新 文章目录 一.初识 JavaScript 1. JavaScript 是什么 2. JavaScript 的作用 3. HTML.CSS 和 ...
- 从零开始学前端:初识JavaScript --- 今天你学习了吗?(JS:Day01)
从零开始学前端:程序猿小白也可以完全掌握!-今天你学习了吗?(JS) 复习:从零开始学前端:jQuery官网 - 今天你学习了吗?(CSS:Day26) 文章目录 从零开始学前端:程序猿小白也可以完全 ...
- NoSQL学习笔记之MongoDB-01初识NoSQL
NoSQL学习笔记之MongoDB-01初识NoSQL 一.什么是NoSQL NoSQL的出现背景: 随着互联网的发展,数据量激增,传统的集中式关系型数据库已经无法满足互联网海量数据的存储及使用需求. ...
- JS学习笔记(一)-初识JavaScript
文章目录 学习笔记(一) 准备工作 初识JavaScript JS的组成 JS书写位置 JS注释 JS输入输出语句 2021.1.11 学习笔记(一) 准备工作 今天开始学习Javascript,开始 ...
- python人狗大战游戏_day22 01 初识面向对象----简单的人狗大战小游戏
day22 01 初识面向对象----简单的人狗大战小游戏 假设有一个简单的小游戏:人狗大战 怎样用代码去实现呢? 首先得有任何狗这两个角色,并且每个角色都有他们自己的一些属性,比如任务名字nam ...
- 初识JavaScript (十九)
初识JavaScript (十九) 1 正则的分组 2 正则的exec方法 3 正则的贪婪和懒惰模式 4 正则练习 5 算法-数组去重indexOf 6 算法-数组去重-splice 7 算法-数组去 ...
最新文章
- 杀掉某个进程的 Shell
- U3D非常诡异的【结构体引用】现象-个例
- 2020-10-29
- 阿里云边缘云ENS再升级,四大场景应用加速产业数字化落地
- 恒安标准人寿:念好小公司数据保护生意经
- Nova Suspend/Rescue 操作详解 - 每天5分钟玩转 OpenStack(35)
- [Matlab] 画图命令
- [BZOJ1444]有趣的游戏(AC自动机+矩阵乘法)
- 将字符串编码成 GBK
- Mac 安装virtualbox 虚拟机用移动硬盘遇到的VERR_WRITE_PROTECT
- 嵌入式linux的学习笔记-pipe管道(二)
- 基于JAVA+Servlet+JSP+MYSQL的中小型财务管理系统
- MySQL高级知识(三)——索引
- 开发中常用正则表达式
- 大白话讲清楚JVM里的方法区、永久代以及元空间
- 哈夫曼压缩与解压缩(c语言版)
- AWNet: Attentive Wavelet Network for Image ISP AWNet:图像 ISP 的注意力小波网络(个人笔记,勿喷)
- Linux的安装(一步一步教你安装Linux)
- 实践者颜水成:在学术界「恋爱」 在工业界「结婚」
- C++之相对路径转绝对路径
热门文章
- 管理-Tomcat和Resin如何配置对指定后缀文件(如:.pptx)下载支持
- CentOS7下vsftp配置
- Codeforces-118D. Caesar's Legions(lazy dynamics)
- Asp.net MVC JsonResult 忽略属性
- [转载] 故宫第三集 礼仪天下(下)
- 20120520 Linux下mysql的自动备份工具
- ASA防火墙透明模式ACL总结
- PHP安全: 一个新型的php一句话cmdshell
- 使用LINUX SENDMAIL发送邮件
- Leangoo阶段式(瀑布式)游戏产品研发