1223
js 书写位置和引入方式
第一种: 内部书写
head 标签下 script 标签里面
body 标签下 script 标签里面 (推荐)
第二种: 外部书写
通过 head 标签中的 script 标签引入
js 常用的输出语句
alert() 网页弹出警告
prompt() 网页弹出输入框
变量
同时声明多个变量
var user = 'john', age = 25;
变量命名规则
- 只能使用字母 数字 _ $
- 不能以数字开头
- 严格区分大小写
- 不能使用保留字
- 使用驼峰命名
- 语义化
数据类型
js 数据分为: 基本数据类型 和 引用数据类型
基本数据类型:
- string
- number
- boolean
- undefined
- null
引用数据类型:
- array
- object
- function
基本数据类型
- number
特殊数值: infinity NaN
- string
同类引号可以嵌套
- boolean
- null
- undefined
typeof
可以用来检测数据类型, 引用类不太准确
类型 | typeof |
---|---|
number | 'number' |
string | 'string' |
undefined | 'undefined' |
null | 'object' |
boolean | 'boolean' |
array | 'object' |
function | 'function' |
object | 'object' |
Array.isArray() 判断 Array 的方法
数据类型转换
js 存在隐式类型转换
转换成字符串的情况
String()
对于 number boolean 存在 toString() 方法
转成数字
Number()
Number( undefinde ) // NaN
Number( null ) // 0
转成布尔值的情况
Boolean()
Boolean('') // false
Boolean(' ') // true
算数运算符
js 中非数字类型也能参加算数运算
非数字类型参加运算:
- 一般, 把非数字类型隐式转换为数字类型 进行运算
- 加法运算比较特殊( 当中有 string 类型, 会把其他类型转换为 string 类型, 然后进行字符串拼接 )
赋值运算符
[ + | - | * | / ] =
a++ 和 ++a 均为自增, 返回值的时机有所区别
比较运算
非数字类型比较, 一般会把非数字类型隐式转换成数字类型比较
但是如果都是 string 类型, 会逐个比较字符的 Unicode 大小来返回
注意 null == 0 //false 这个比较没有隐式转换
null > 0 //false 存在隐式转换
null >= 0 //true 存在隐式转换
逻辑运算
逻辑运算中存在隐式 boolean 转换
&& 运算, 遇到 false, 返回表达式, 否则返回最后的
|| 运算, 遇到 true, 返回表达式, 否则返回最后的
parseInt 和 parseFloat
专门处理 string 中的 number, 比 Number() 强大
parseInt() 也可以截取整数