JavaScript知识小结1
- 概念: 一门客户端脚本语言。
脚本语言: 不需要编译,可以直接被浏览器解析执行。 - 功能: 可以增强用户和html页面的交互过程,可以控制html元素,让html页面有一些动态效果。
- 与html的两种结合方式: 内部JS和外部JS。
内部JS: 定义<script标签,标签体的内容就是JS代码。
外部JS: 定义<script标签,通过src属性引入外部的JS文件。 - 数据类型: 原始数据类型和引用数据类型。
原始数据类型: number、string、boolean、null、undefined。
number: 数字。有3种形式,整数、小数、NaN(不是一个数字的数字类型)。
string: 字符串。JS中,单引号和双引号引起来的都是字符串。如:"abc"和’123’都是字符串。
boolean: true和false。
null: 一个对象为空的占位符。
undefined: 未定义。如何一个变量没有给定初始值,则会被默认赋值为undefined。
引用数据类型: 对象。 - 变量: Java语言是强类型语言,而JS是弱类型语言 。
强类型语言: 在开辟变量存储空间时,会定义空间存储的数据的数据类型,因此只能存储固定类型的数据。例如:在Java中,声明变量int A=3时,会定义空间存储的数据类型为int类型,那么该存储空间就只能存储int类型的数据。
弱类型语言: 在开辟变量存储空间时,不会定义空间存储的数据的数据类型,因此可以存放任意类型的数据。
语法: var 变量名 = 初始值。
typeof: 获取变量的类型。
注意: null使用typeof运算后得到的是object。 - 运算符: 一元运算符、算术运算符、赋值运算符、比较运算符、逻辑运算符、三元运算符…。
a.一元运算符: ++、–与Java语法相同。
+(正号):用于对number类型的数据进行运算,如果不是number类型,则要进行类型转换。
string转number: 按字面值进行转换,如果字面值不是数字,则转换为NaN。
boolean转number: true为1,false为0。
b.算术运算符: +、-、*、/、%…与Java语法相同。
c.赋值运算符: =、+=…与Java语法相同。
d.比较运算符: >、<、>=、<=、==,在JS中不同类型的数据可以进行比较,比较时需要进行类型转换。
string类型数据之间进行比较时,按字典顺序进行比较,直到比较出大小为止。
全等于: 比较时,如果运算符两边的数据类型不一样,则直接得到false。
e.逻辑运算符: &&、||、!。
&&(与):具有短路效果,如果运算符左侧为false,则不需计算右侧表达式,直接返回false。
||(或):具有短路效果,如果运算符左侧为true,则不需计算右侧表达式,直接返回true。
!(非):
其他类型转boolean:
number:0或NaN为false,其他为true。
string:空字符串("")为false,其他为true。
null&undefined:都是false。
对象:对象都为true。
三元运算符: 与Java语法类似。