# 笔记

### js概念

> 是一种高级的、解释型的编程语言
>
> 是一门基于原型、头等函数的语言,是一门多范式的语言,它支持面向对象程序设计,指令式编程,以及函数式编程
>
> 其实底层原理更像是一个大杂烩,c语言的基本语法,Java的数据类型和内存管理,scheme中"将函数提升到第一公民的地位",self中使用基于原型的继承机制

### 组成

> JavaScript组成是由
>
> 定义语言规范的ECMAScript
>
> 用于操作文档的API: DOM
>
> 用于操作浏览器的API: BOM

### 编写方式

> ### HTML代码行内(不推荐)
>
> 在HTML的任何一个标签头里面调研js参数都可以实现效果,但是混用非常影响视觉
>
> ### script标签中
>
> ```html
> <script></script>
> ```
>
> ### 外部script
>
> ```html
> <script src='文件名'></script>
> ```
>
> 

### JavaScript的交互方式

> alert  在浏览器弹出一个警告框
>
> ```js
> alert("这是一个警告框")
> ```
>
> console.log 最常用的打印信息方法,可以接受多个参数,逗号分隔。会自动在每次输出的结尾添加换行符。没有返回值会返回undefined
>
> ```js
> console.log('值','值',...)
> ```
>
> document.write 常用来网页向文档中输出内容,也可以输出变量
>
> ```js
> document.write('内容')
> ```
>
> prompt 弹出一个对话框,内部有一个提示语及一个输入框,根据输入框提示输入内容,第一个参数设置提示内容,第二个参数设置默认输入内容(可不写)
>
> ```js
> promept('参数一','参数二')
> ```
>
> 

### 注意事项

> <script>       不能写成单标签
>
> 在<script src='文件名'> </script>中src后面不接任何东西,不然会使其失效
>
> js中可以省略type,因为默认是js
>
> 要注意书写顺序,要先让作用对象加载出来,不然js识别不了
>
> js严格区分大小写

### 报错

> 代码中遇到报错可以进调试里面的console中查看
>
> 也可以在里面调试(多行代码shirt+enter换行)

### 注释

> 单行 //
>
> 多行 /*   */



# 作业

# Day01 作业布置

## 一. 完成课堂所有的代码

```html
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
	<noscript>
    	<p>你的浏览器不支持js,最好升级一下</p>
 	 </noscript>

  	<a href="https://www.baidu.com/" onclick="alert('点击百度一下')">百度一下</a>
	<a class="gg" href="#">有没有问题</a> 
    <a class="gg2" href="https://blog.csdn.net/weixin_48683052/article/details/121240929">点一下</a>
    <script src="./do.js"></script>
    <script> 
        const g1 = document.querySelector(".gg") 
        g1.onclick = function () { 
            alert(" 有点问题")
        } 
    </script>
</body>
```

alert , document.write, console.log() , prompt

```js
const g = document.querySelector(".gg2")
g.onclick = function () {
  alert("在点一下试试看")
}
```

## 二. 简单聊聊JavaScript的历史(自己的话术来总结)

> Brendan Eich 耗时十天制作的一种语言 一开始是叫作LiveScript后面因为发现java的热度高所以改名为JavaScript


## 三. 说说你对JS引擎的理解(自己的话术总结)

>   由ECMAScript的语言层面和DOM和BOM操作
>
>   引擎的话是一种解释和执行 JavaScript 代码的软件组件或程序。它负责将 JavaScript 代码转换为可执行的指令,以便在计算机上运行。不同的浏览器和操作系统通常使用不同的 JavaScript 引擎。



## 四. JavaScript的交互方式有哪些?(后两种方式)

 alert ,document.write,console.log() ,prompt



## 五. 定义一些你日常生活或者在某些程序中见到的变量(10个)(预习)

> var,let,const,name,age,numbers,person,undefinedValue,emptyValue,isStudent



## 六. 说出JavaScript中的常见数据类型以及它们代表的含义(预习)

> number 数字值
>
> Boolean 布尔型
>
> array 数组
>
> object 对象
>
> null 空值
>
> Undefined 未定义
>
> Function 函数
>
> RegExp 正则表达式
>
> Symbol 符号