前端基础(一)_初识JavaScript

简介: 本文介绍了JavaScript的起源、核心组成(ECMAScript、DOM、BOM),并解释了JavaScript的三种引入方式:行内引入、内部引入和外部引入,以及`window.onload`的使用,最后讨论了网页、网站、浏览器和兼容性的概念。

最开始的时候,浏览器只能显示文本和图片,并不能做各种动态的操作。

一、JavaScript的历史

1、网景公司的布兰登艾奇开发了js
2、借鉴了java的数据管理机制、c的函数
3、Js的创建是用来解决浏览器和用户之间互动的问题(表单提交的问题)
4、历程:Mocha->livescript->javascript

二、JavaScript的核心组成

1.ECMAscript 核心语法 规定这门语言怎么写或者怎么用
2.DOM document object model 文档模型-----标签
3.BOM browser object model 浏览器模型–浏览器

2.1 JavaScript的组成

(1) ECMAScript js的语法标准 核心
(2) DOM: document object model 文档对象模型 dom提供了操作html文档的方法
(3) BOM:Browser object model 浏览器对象模型 bom提供了操作浏览器的方法

2.2 什么是JavaScript

JavaScript是一门基于对象的,由事件驱动的,解释性 脚本语言。
①基于对象:对象是JS中的一种数据,包含了一些方法,这些方法可以解决js中的一些最基本的操作(对象只能解决基础的问题)
②由事件驱动:主要是用来解决浏览器和用户之间的交互问题的。用户对浏览器页面进行操作,浏览器页面给用户对应的反馈,这些事情都是由事件来驱动完成的
③解释性

  1. 编译性:编译性语言在执行代码的时候。会先将整段代码进行一次编译,编译完之后生成一个exe文件,之后之用exe文件打开程序就可以一劳永逸了。
  2. 解释性:解释性语言在执行代码的时候,会逐行解释代码,解释一行执行一行
  3. 在开发浏览器页的时候,解释性语言由于不容易出现白屏,因此在开发网页的时候,更偏向于解释性语言,解释性语言也是跨平台的,因此,兼容性更好。

2.3 JavaScript的三种引入方式

(1)行内引入

<div onclick=”alert(‘我是行内引入’)”></div>

②注意:引号的嵌套 如果语法哦引号的嵌套,需要外层引号
③不推荐使用行内引入的js代码,不利于结构和js代码逻辑分离

(2)内部引入 将代码写在script标签中

①在html代码中写入script标签,
②在script标签中写入js代码
③注意:在html文档中可以写入多个script标签,也可以将script写在任意位置,但是一般写在body末尾或者head标签末尾
④推荐把script写在body后面
⑤Html代码的执行顺序是从上到下的,如果遇到script标签,就会进入script标签,执行js代码,执行完之后再继续执行下去,因此如果再body前面获取元素,就获取不到,因此建议写在body标签的末尾

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>LiuQing</title>
</head>

<body>
  <div class="box">
    我是box盒子
  </div>
  <script>
    setTimeout(() => {
    
      const box = document.getElementsByClassName('box')[0]
      alert(box.innerHTML)
    }, 1000)
  </script>
</body>


</html>

在这里插入图片描述

(3)外部引入 使用script的src属性引入

①写入script标签
②将script标签的src属性设置外部js文件的路径
③注意:外部引入的js文件的script标签中不能写任何js代码,如果写了也不会执行。
Href和src的区别 都是指的路径 一个指的外部样式的路径 一个是js的外部路径
a标签和css外部进入都是href
js和图片都是src

html:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>LiuQing</title>
</head>

<body>
  <div class="box">
    我是box盒子
  </div>
  <script src="./text.js"></script>
</body>

</html>

js:

setTimeout(() => {
   
  const box = document.getElementsByClassName('box')[0]
  alert(box.innerHTML)
}, 1000)

在这里插入图片描述
在这里插入图片描述

三、window.onload

(1)Window.οnlοad=function(){js代码}
(2)作用:写在大括号的js代码会等到页面上的所以标签和外部资源(图片、音频、视频、外部文件)都加载完 再执行;

  <script>
    window.onload = () => {
   
      const box = document.getElementsByClassName('box')[0]
      alert(box.innerHTML)
    }
  </script>

网页和网站的区别
网页:html css js
网站:由网页组成

浏览器:谷歌 火狐 opera IE safari 等等
为什么会有兼容:因为浏览器的内核不一样

Java和javascript之间的关系? 没有任何半毛钱关系。

目录
相关文章
|
21天前
|
存储 前端开发 JavaScript
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
本文介绍了JavaScript变量的声明和使用、标识符的命名规则、如何获取和操作HTML元素,以及JavaScript的鼠标事件处理,通过示例代码展示了这些基础知识点在实际开发中的应用。
32 2
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
|
21天前
|
前端开发 JavaScript
前端基础(八)_JavaScript循环(for循环、for-in循环、for-of循环、while、do-while 循环、break 与 continue)
本文介绍了JavaScript中的循环语句,包括for循环、for-in循环、for-of循环、while循环、do-while循环以及break和continue的使用。
43 1
前端基础(八)_JavaScript循环(for循环、for-in循环、for-of循环、while、do-while 循环、break 与 continue)
|
21天前
|
存储 前端开发 JavaScript
前端基础(三)_JavaScript数据类型(基本数据类型、复杂数据类型)
本文详细介绍了JavaScript中的数据类型,包括基本数据类型(Number、String、Boolean、Undefined、Null)和复杂数据类型(Object),并解释了如何使用`typeof`操作符来识别变量的数据类型。同时,还讨论了对象、函数和数组等复杂数据类型的使用方式。
24 2
|
9天前
|
JavaScript 前端开发 API
【前端基础篇】JavaScript之jQuery介绍
【前端基础篇】JavaScript之jQuery介绍
32 0
|
9天前
|
JavaScript 前端开发 Java
【前端基础篇】JavaScript之BOM介绍
【前端基础篇】JavaScript之BOM介绍
20 0
|
9天前
|
JavaScript 前端开发 UED
【前端基础篇】JavaScript之DOM介绍2
【前端基础篇】JavaScript之DOM介绍
14 0
|
9天前
|
JavaScript 前端开发 搜索推荐
【前端基础篇】JavaScript之DOM介绍1
【前端基础篇】JavaScript之DOM介绍
20 0
|
9天前
|
Web App开发 JavaScript 前端开发
【前端基础篇】JavaScript基础介绍
【前端基础篇】JavaScript基础介绍
11 0
|
2月前
|
Java 开发者 关系型数据库
JSF与AWS的神秘之旅:如何在云端部署JSF应用,让你的Web应用如虎添翼?
【8月更文挑战第31天】在云计算蓬勃发展的今天,AWS已成为企业级应用的首选平台。本文探讨了在AWS上部署JSF(JavaServer Faces)应用的方法,这是一种广泛使用的Java Web框架。通过了解并利用AWS的基础设施与服务,如EC2、RDS 和 S3,开发者能够高效地部署和管理JSF应用。文章还提供了具体的部署步骤示例,并讨论了使用AWS可能遇到的挑战及应对策略,帮助开发者更好地利用AWS的强大功能,提升Web应用开发效率。
55 0
|
2月前
|
移动开发 前端开发 JavaScript
前端表单验证的完美攻略:HTML5属性与JavaScript方法的无缝对接,让你的Web应用数据输入既安全又优雅
【8月更文挑战第31天】本文介绍前端表单验证的重要性及其实现方法,利用HTML5的内置属性如`required`、`pattern`和`minlength`进行基本验证,并借助JavaScript处理复杂逻辑,如密码确认。通过示例代码详细展示了如何结合两者实现高效且友好的表单验证,同时使用CSS增强用户体验。此方法简化开发流程并提升验证效果。
56 0