这是我参与11月更文挑战的第2天,活动详情查看:2021最后一次更文挑战
js简介
- js是一种运行在客户端的脚本语言
- 脚本语言不需要编译,运行过程中由js解释器逐行进行解析和执行(即读一行翻译一行)
- 也可以基于node.js技术进行服务端编程
js的浏览器执行
- 渲染引擎:用来解析HTML和CSS,俗称内核,比如chrome浏览器的blink,老版本的webkit
- JS引擎:也称JS解释器。用来读取网页中的javascript代码,对其进行处理
浏览器本身不会执行js代码,而是通过内置javascript引擎来执行js代码。js引擎执行代码时逐行解释每一句源码,然后计算机去执行。
js组成
ECMAScript:js语法 DOM:页面文档对象模型 BOM:浏览器对象模型
ECMAScript
是由ECMA国际进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为javascript或者jscript,但实际后两者是ECMAScript语言的实现和扩展。
js三种书写位置:行内 内嵌 外部
- 行内
例如:
<input type="button" value="点我试试" onclick="alert('HELLO WORLD')" />
- 可以将单行或少量js代码写在html标签的事件属性中(以on开头的属性),如:onclick
- 注意单双引号的使用:在html中推荐使用双引号,js中推荐使用单引号
- 可读性差,在html中编写js大量代码时候,不方便阅读
- 引号易错
- 特殊情况下使用
- 内嵌
<script>
代码部分
</script>
- 外部js文件
<script src="my.js"></script>
输入输出语句
| 方法 | 说明 | 归属 |
| prompt | 浏览器弹出输入框,用户可以输入 | 浏览器 |
| alert | 浏览器弹出警示框 | 浏览器 |
| console.log | 浏览器控制台打印输出信息 | 浏览器 |
变量
本质:内存中申请一块存放数据的空间
声明变量
var a=18;
var a='yruhb';
var a='李木子';
var a=prompt('请输入变量值');
console.log(a);
alert(a);
var a=18, address='teyf';
- 变量只声明不赋值会出现undefined
- 不声明不赋值直接使用会报错
- 不声明直接赋值可以,但不提倡
简单数据类型
数字型
- js八进制前面加0,十六进制前面加0x
- js中数值的最大和最小值
- alert(Number.MAX_VALUE)
- alert(Number.MIN_VALUE)
- isNaN() 判断一个变量是否为非数字,不是数字返回true 是数字返回false
- Infinite 表现为无穷大,大于任何数值
-Infinite 表现为无穷小,小于任何数值
NaN 表示一个非数值