一、js基础介绍
js:javascript
脚本语言 依赖其他的程序
弱类型 语法要求不严格,数据类型分类相对其他语言没有那么严格
直译型 直接翻译
js能干什么?
加强页面动画效果
js接受后端传来的数据
js给后端传数据
js最早是为了解决表单验证的问题
二、js的三种引入方式
<!-- 内部样式,外部样式,行内样式 -->
1.<!-- 内部样式 -->
<script>
// js代码
</script>
2. <!-- 外部 -->
<script src="路径"></script>
3. <!-- 行内 -->
三、js的三种输出
alert() 不支持标签 可以识别空格
document.write() 支持标签 不可以识别空格
console.log() 不支持标签 可以识别空格
三种数据类型
number数字类型 蓝色 string字符串类型 黑色 boolean布尔值类型 蓝色
四、变量的声明
var
变量的命名要求 -- 底线
1 只能是数字,字母,下划线以$
2 数字不能开头
3 不能使用关键字和保留字
关键字:js当中正在使用的,具有特殊意义的单词
保留字:js将来可能定义为关键字的单词
变量命名的规范 -- 建议
1 不用拼音
2 建议使用驼峰命名或者组合命名
3 命名尽量做到见名知意
// user_name 组合命名
var user_name = '小花';
// 不推荐使用
// var yong_hu_ming = '小花';
//小驼峰
var userName = '小花';
// 大驼峰 不要使用
var UserName = '小花';
五、 数据类型
基本数据类型: string number boolean null undefined
引用数据类型
基本数据 类型的判断方法 typeof
六、 数据类型转换
1. 其他数据类型转字符串
数字转字符串
布尔值转字符串
null转字符串 'null’
ndefined转字符串 'undefined'
2. 其他数据类型转数字
字符串转数字 若字符串都是数字,直接转数字;若字符串包含非数字 NaN;空字符串和空格字符串都转为0;
布尔值转数字 true 1 false 0
null转数字 0
undefined转数字 NaN
3.其他数据类型转布尔值
数字转布尔值 其他数字都是true 0和NaN为false
字符串转布尔值 字符串有东西就是true 空字符串 false
null转布尔值 false
underfined转布尔值 false
4.强制类型转换
Number() 强制转为数字
String() 强制转为字符串
Boolean() 强制转为布尔值
七、 js运算符
// 算术运算符 + - * / %
加号的两种含义
遇到字符串就是 拼接的意思
没有字符串就是 求和的意思
***** 只有数字可以做减法,乘法,除法,求模运算
// 逻辑运算符
// 与 并且 多个条件同时满足 &&
// 或 只要有一个条件满足 ||
// 非 取反
// 短路
// 逻辑与运算中 见假即假 见假就短路了
// 逻辑或运算中 见真即真 见真就短路了
// 关系运算符
// 赋值运算符
// =
// +=
// -=
// *=
// /=
// %=
var x = 1 ;
// x = x + 1;
x += 1 ;
var y = 2 ;
y *= 2 ; // y = y * 2 ;
console.log(y); // 4
// 比较运算符
比较运算符 得到布尔值
>
<
>=
<=
==
===
!= 值不相等 == 反义词
!== 值或者数据类型不相等 === 反义词
大于或等于
小于或等于
等于 == ===
关于等号
= 赋值
== 判断值相等
=== 值和数据类型都要相等
// 0 < 10 < 20
// 只有数学可以这么写
// js不能这样写 js没有连等式
// console.log( 0 < 10 < 2);
// 解读: 0 < 10 得到true
// true < 2 得到true
隐式转化
其他转字符串
强制转换 String()
+ ''
其他类型转数字
强制转化 Number()
-0 /1 *1 %更大的数
变量在使用的过程中,是值在做计算,不是变量在做计算
变量只有通过赋值才会改变
自增运算
// ++在前面,先自增再赋值,
// ++在后面,先赋值,再自增
// 1 计算结果
var a = 2 ;
var e = a++ + --a + a-- + ++a ;
console.log(e);
// a值 3 2 1 2
// 表达式值 2+ 2 + 2 +2 = 8