JavaScript基础
目录
- JavaScript基础
- 1. 什么是JavaScript
- 1. 概述
- 2. 历史
- 2. 快速入门
- 1. 引入JavaScript
- 1. 内部标签
- 2.外部引入
- 2. 基本语法入门
- 3. 数据类型
- 1. number
- 2. 字符串
- 3 .布尔值
- 4. 逻辑运算
- 5. 比较运算符(重要)
- 6. 浮点数问题
- 7. null和undefined
- 8. 数组
- 9. 对象
- 10. 变量
- 4. 严格检查模式
- 1. 引入JavaScript
1. 什么是JavaScript
1. 概述
JavaScript是一门世界上最流行的脚本语言
Java和JavaScript无关
一个合格的后端人员,必须要精通JavaScript
2. 历史
https://blog.csdn.net/kese7952/article/details/79357868
ECMAScript可以理解为JavaScript的一个标准
最新版本已经到es6版本
但是大部分浏览器还只停留在支持es5代码上
开发环境和线上环境的版本不一致
2. 快速入门
1. 引入JavaScript
1. 内部标签
2.外部引入
abc.js
//.....
test.html
测试代码
Title
2. 基本语法入门
Title
3. 数据类型
数值,文本,图形,音频,视频......
1. number
js不区分小数和整数,都用number定义
123 //整数123
123.1 //浮点数123.1
1.123e3 //科学记数法
-99 //负数
NaN //not a number
Infinity //表示无限大
2. 字符串
"abc" 'abc'
3 .布尔值
true false
4. 逻辑运算
&& 两个都为真,结果为真
|| 一个为真,结果为真
! 非
5. 比较运算符(重要)
=
== 等于(类型不一样,值一样,也会判断为true)
=== 绝对等于(类型一样,值一样,结果为true)
这是一个JS的缺陷,坚持不要使用==比较
须知:
- NaN === NaN,结果为false,NaN与所有的数值都不相等,包括自己
- 只能通过isNaN( )判断其是否为NaN
6. 浮点数问题
console.log((1/3) === (1-2/3)); //结果为false,精度会被截断
尽量避免使用浮点数进行运算,存在精度问题
Java中使用BigDecimal类进行判断
JS中如下
Math.abs(1 / 3 - (1 - (2 / 3))) < 0.0000001
7. null和undefined
- null 空
- undefined 未定义
8. 数组
Java的数组必须是相同类型的对象,JS不需要这样
//保证代码的可读性,尽量使用第一种方法定义数组[]
var arr = [1, 2, 3, 4, "hello", null, true];
new Array(1, 12, 3, "hello");
取数组下标:如果越界了,就会undefined
9. 对象
对象是大括号,数组是中括号
每个属性之间使用逗号隔开,最后一个不用加逗号
var person = {
name: "wang",
age: 3,
tags: ['js', 'java', 'web', '...']
}
取对象的值
var name = person.name;
var age = person.age;
var tags = person.tags;
10. 变量
var
4. 严格检查模式
Title