回顾:
web的三大标准:html(结构)+css(表现)+js(行为)
Javascript
动态的行为+数据交互
javascript是什么
javascript是世界上最流行的语言之一,是一种运行在客户端的脚本语言
**脚本语言:**不需要编译,运行过程由js解释器(js引擎)逐行来进行解释并执行,现在也可以基于Node.js技术来进行服务端编程
javascript作用
- 表单动态校验
- 网页特效
- 服务端开发(Node.js)
HTML/CS/JS的关系
html决定网页结构和内容
css决定网页呈现给 用户的模样
js弱类型的脚本语言------编程类语言------业务逻辑和页面控制
浏览器执行js
浏览器分为两部分:渲染引擎和JS引擎
渲染引擎:用来解析HTML和CSS,俗称内核
JS引擎:js解释器,用来读取网页中的javascript代码,对其处理后运行,比如chrome浏览器的v8
JS的组成
ECMAScript(javascript语法)、DOM(页面文档对象模型)、BOM(浏览器对象模型)
JS体验
js有三种书写方式:行内、内嵌、外部
1.行内式:
<input type="button" value="点我" onclick="alert('dajiahao')">
- 可以将单行或少量的js代码写在HTML标签的事件属性中(以On开头的属性)如:onclick;
- 单双引号要错开使用,HTML中推荐使用双引号,js中使用单引号;
- 可读性差,在HTML中编写大量的js代码,不方便阅读,引号易错;
- 特殊情况下才使用
2.内嵌式:
<script>
alert('hello大家好')
</script>
- 可以将多行代码写在script标签中;
- 内嵌式js是学习常用的方式;
3.外部式
<script src="./index.js"></script>
- 利于HTML代码的结构化,把大段的js代码独立到HTML页面之外,方便复用;
- 引用外部js文件的script标签中间不可以写代码;
- 适用于js代码量比较大的情况;
JS注释
单行注释:ctrl+/;
多行注释:alt+shift+a;
JS输入输出语句
alert('浏览器弹出警示框');
console.log('浏览器控制台输出信息');
prompt('输入一个数字')
变量
1.什么是变量
变量是用于存储数据的容器,通过变量名获取数据,甚至数据可以修改
2.变量在内存中的存储
变量是程序在内存中申请的一块用来存放数据的空间
3.变量的使用
变量申明
<script>
// 声明变量
var name; //声明了一个名称为name的变量
/*
var 是js的关键字,用来声明变量的,用该关键字声明的变量,计算机会自动为变量分配内存空间,不需要程序员管
name是程序员定义的变量名,我们要通过变量名来访问内存中分配的空间
*/
name = '张三'; //给name这个变量赋值为张三
var aa = 23; //声明变量并赋值23
/*声明变量并赋值,我们称为变量的初始化 */
/* 同时声明多个变量,只需要写一个var,多个变量名之间用逗号隔开 */
var age = '13', name = '张三', sex = '男';
</script>
变量的特殊情况:
1.只声明不赋值,输出为undefined;
2.不声明不赋值 直接使用 报错;
3. 不声明只赋值 得到值
变量的命名规范:
由字母,数字,下划线,$组成,严格区分大小写,不能以数字开头,不能是关键字,要有语义化,遵守驼峰命名法,首字母小写,后面单词的首字母大小,如myFirstName
数据类型
- 在计算机中,不同的数据占用的存储空间是不同的,为了把数据分成所需的内存大小不同的数据,充分利用存储空间,就定义了不同的数据类型
- js是弱类型语言,js变量的数据类型由变量的值来决定
数据类型的分类
简单数据类型:number数字,string字符串,boolean布尔,undefined,null
复杂数据类型:Object对象
简单数据类型:
number:数字类型,包括整型和浮点型,最常见的还有二进制,八进制,十进制,十六进制,只需要记住js中八进制前面加0,十六进制前面加0x;
javascript数值的最大值和最小值
最大值 Number.MAX_VALUE
最小值 Number.MIN_VALUE
数字型的三个特殊值:
infinity 无穷大,大于任何数值;
-infinity 无穷小,小于任何数值;
NaN : not a number 代表一个非数值
(isNaN 用来判断一个变量是否为非数字 若是返回true,否则返回false)