JavaScript发展历史
1996年11月,Netscape公司决定将JavaScript提交给国际标准化组织ECM|A ( European Computer Manufacturers Association欧洲计算机制造商协会),希望JavaScript能够成为国际标准,以此抵抗微软。
34岁的系统程序员Brendan Eich登场了。1995年4月, 网景公司录用了他,他只用10天时间就把Javascript设计出来了。(多态语言)
JavaScript的组成
1. ECMASCRIPT:定义了javascript的语法规范,描述了语言的基本语法和数据类型
2. BOM (Browser Object Model):浏览器对象模型
-有一套成熟的可以操作浏览器的API,通过BOM可以操作浏览器。比如:弹出框、 浏览器跳转、获取分辨率等
3. DOM (Document Object Model):文档对象模型
有一套成熟的可以操作页面元素的API,通过DOM可以操作页面中的元素。比如:增加个div,减少个div,给div换个位置等
总结: JS 就是通过固定的语法去操作浏览器和标签结构来实现网页上的各种效果
JavaScript代码的书写位置
和css-样,我们的js也可以有多种方式书写在页面上让其生效
. js也有多种方式书写,分为行内式,内嵌式,外链式
变量
-
变量指的是在程序中保存数据的一个容器
-
变量是计算机内存中存储数据的标识符,根据变量名称可以获取到内存中存储的数据
-
也就是说,我们向内存中存储了一个数据,然后要给这个数据起一个名字,为了是我们以后再次找到他
-
变量的本质是内存中一个存储单元
-
语法:
var 变量名 = 值
<script> var score score = 100 var age = 18 </script>
变量
1.值变化的量叫变量
2.本质上是内存中存储单元,理解为一个容器
3.变量定义语法:
var变量名称
var score //使用var关键字定义个名为score的变 量
4.变量的赋值
score=100//将100赋值给score变量,
5.访问变量
console. log(score )
6.变量名命名
1.必须是字母(a-z A-Z)、 数字(0-9)、 下划线(_ )组成
2.不能数字开头
3.不能是关键字(特定意义的单词)比如: var
4.不能是保留字(将来有特殊用处的单词)
规范;
1.语义化
2.驼峰命名
var us e rName
变量第二个单词首字母大写
3.不要使用中文
内存结构图
1.栈区域和堆区域
2.变量本质上是内存中存储单元
数据类型
分为基本数据类型和复杂数据类型
- 基本数据类型
<script>
var score
score = 100
var age = 18 //数字
var userName = 'xiaobai' //字符串
var boolean = true //布尔类型
var isNull = null //空类型
var abc //未定义的
console.log('数字',score-age)
console.log(typeof score,score)
console.log('字符串',typeof userName)
console.log('布尔类型',typeof boolean)
console.log('空类型',typeof isNull)
console.log('未定义的',typeof abc)
console.log('值是',age)
</script>
- 复杂数据类型
对象类型object
函数类型function
等等
- 判断数据类型
typeof
使用 typeof 关键字来进行判断
isNaN(x)
isNaN(x)函数用于检查其参数x是否是非数字值,是非数字值返回true,否则返回false
- 数据类型的转换
字符串转换数字
<script>
var message = '100' //string
console.log(message, typeof message)
console.log(typeof Number(message))
console.log(Number('100'))
console.log(Number(message))
console.log(parseInt ('100'))
console.log(parseInt ('10a00'))
console.log(parseInt ('100.15'))
console.log(parseFloat ('10a00'))
console.log(parseFloat ('100.95'))
</script>
其他类型转换数字
<script>
console.log(Number(''))
console.log(Number(false))
console.log(Number(true))
console.log(Number(null))
console.log(Number(undefined))
</script>
其他数据类型转成字符串
其他数据类型转成布尔
运算符
- 数学(算术)运算符
- 赋值运算符
=
就是把。右边的赋值给等号左边的变量名
var num .100
就是把100赋值给num变量
那么num变量的值就是100
- 比较运算符
- 逻辑运算符
- 自增自减运算符(一元运算符)
- 运算符优先级