【0】js
前端语言,用来控制标签的互动动作的
【一】js的使用方式
1.script标签内部直接书写js代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>// 可以在这里写JS代码</script>
</head>
<body>
</body>
<script>
<!-- 可以在这里写JS代码 -->
</script>
</html>
2.script标签src属性引入外部js代码
<script src="外部JS代码位置"></script>
3.行内写法
<div onclick="(alert('Surprise!'))">click me !</div>
【二】js常用语句
1.注释
// 单行注释
/*
多行注释
多行注释
*/
2.alert:警告,在浏览器中弹出一个警告框,内容为alert里面的内容
alert(内容);
3.prompt:对话框,第一个参数是询问内容,第二个参数是提示会在输入框中显示
prompt(问题,值);
4.console:控制台,在控制台内输出一些内容
closole.log(内容);
【三】js数据类型
● 简单数据类型:Number、String、undefined、Boolean、null
● 复杂数据类型:Object
查看类型的方法typeof方法
eg:
typeof("llh")
(1)字面量
字面量是用于表达固定值的方法,又叫常量
比如:数字、字符串、布尔值等
(2)数字字面量
数学意义上的数字
数字字面量区分:整数、浮点数、特殊值
(3)特殊值
Infinity 无穷:无穷大Infinity ,无穷小-Infinity
NaN:不是一个正常的数,是数字类型,可以通过isNaN来判断,但是 他的类型是 number
NaN 加减后的结果是 NaN
(4)字符串
● 组成:字母,汉字,特殊符号,空白等
● 字符串的字面量写法:是用一对单引号或者一对双引号
● 如果字符串中含有单引号那么字面量写法就必须用双引号,反之也一样
● 转义符号:\n换行 ,\t缩进 ,' 单引号 ," 双引号,\反斜杠
【四】变量与常量
(1)变量命名规范
1.只能是 数字/字母/下划线/$
2.推荐驼峰式命名法大驼峰、私有成员以_开头
3.不能用关键字作为变量名
4.不能用数字开头
(2)变量
1.变量(variables),是计算机内存中存储数据的标识符,可以根据变量名称获取存储的值
变量相当于一个容器,内部可以存储任意的数据,使用变量时,用的是内部存储的数据
注意:变量使用前必须先定义,如果没有定义就会出现引用错误
语法:
● var 在循环内定义也会影响到全局
● let 在局部定义只会在局部生效
全局
var a=1;
局部
let a=1;
(3)常量
const pi=x;
【五】数值
1.整数、浮点数、特殊值
2.类型转换
var e = parseInt("11.11");#11
var f = parseFloat("11"); #11
console.log(parseInt("11asdasdada33336669932adsada"))#11只要开头有数字就可以转,如果开头不是数字则是NaN
console.log(parseInt("aasdads444564546"))// NaN
console.log(parseFloat("11.11"))#11.11
【六】字符类型
1.不支持三引号
2.要多行写字符串
eg:
方式一:
let multiLineString = `这是一个
多行字符串
的例子`;
方式二:
let multiLineString = "这是一个\n" +
"多行字符串\n" +
"的例子";
3.格式化字符串:${变量名}找前面定义过的变量名
var str = `my name is ${name} my age is ${age}`;
4.js中推荐使用+拼接字符串
5.常用方法
(1)统计字符长度length
字符串.length
(2)移除空白
去除两端空白trim()
字符串.trim()
去除左边的空白trimLeft()
字符串.trimLeft()
去除右边的空白trimRight()
字符串.trimRight()
(3)返回索引
返回索引为n的字符
name1.charAt(5)
返回字符所在的索引(r的索引)
name1.indexOf("re");
(4)切片
substring 取索引 0~5的内容
name2.substring(0,5)
slice 取索引 0~5的内容
name2.slice(0,5)
区别:slice 可以用 -1 取值
(5)字符大小写转换
.toLowerCase()小写
.toUpperCase()大写
(6)切分
以指定字符切分字符串
name4.split("|");得到一个列表
参数 2 意思是拿几个元素,若少于有几个拿几个
name4.split("|",2);
(7)拼接concat
字符串拼接 可以自动转换数据类型
name1.concat(name2,name3,name4);
(8)转换成字符串
可以通过toSrting方法、通过+''运算、String构造函数
console.log(6 + '');
console.log(String(6));
console.log([1,2,3].toString());
【七】布尔类型
1.true,false
2.flase的情况: 空字符串,0,null,undefined,NaN
其他都是true
3.类型转换:
var a=Boolean(null);
【八】null 和 undefined
1.null为空值起码他是值
2.undefined声明了变量但是没有初始化没赋值,因为js是基于函数的一门语言,undefined是因为他没有返回值