属性的两种操作方式
1、 “.”
oDiv.style.background
2、“[]”
oDiv["style"][background"]
- 区别:能用点操作的属性都能用中括号操作
- 数字,变量只能用中括号操作
等号“=”
- “=”用来赋值
- “==”用来比较的,非严格比较,只比较结果不比较数据类型
- “===”用来严格比较
用省略号的样式展示
white-space:nowrap不折行
text-overflow:ellipsis;文省略号,ellipsis代表本溢出
overflow:hidden;溢出隐藏
基本数据类型中的null和undefined
- null代表现在没有,以后会有
var date=null 只有等到请求结束时,才能给date赋值有 - undefined代表现在么有以后也不会有
- 函数没有返回值
- 没写return
- 写了return但是没有返回值
- 对象的某个属性不存在,拿到的值就是undefined
- 定义了形参,但没有赋值
- 函数没有返回值
对象object{}
- 语法{k:v,k:v,k:v} k:key,v:value
面试题:小明今年20岁,性别:男,他有两个姐姐,大姐:红红,年龄:28,小姐:绿绿,年龄:22,小明考试成绩出来了,语文:89,数学:30,英语:30,小明的爱好是踢足球和打篮球;请用一个对象的形式描述以上文字;
var obj={};//{k:v,k:v,k:v} k:key,v:value
var xiaoming={
name:'xiaoming',
sex:'man',
age:20,
sisters:{
"dajie":{
name:'honghong',
age: 28
},
"xiaojie":{
name:'lvlv',
age: 22
}
},
score:{
chinese: 89,
match: 30,
english: 30
},
hobby:['soccer','basketball']
}
- 对象的遍历
for...in
for(var attr in obj){
attr:属性名
obj[attr]:属性值
}
- 对象的增加删改
- 增obj.aaa=aaaa;属性名不存在;
- 改obj.xxx=xxxxx;属性名存在,改属性值;
- 删
- 真删delete obj.xxx;
- 假删obj,xxx=null;
- 查obj.xxx;
- 数组的增删查改
- 增ary[x]=xxx;
- 删 只能用数组的方法删除splice
- 如果两个参数代表删除
- 如果三个参数,第二个为0则是插入
- 如果三个参数,第二个不为0,则是替换
- 查ary[x]数组的索引;
- 改ary[x]=xxxx;
- 数组的循环
- for循环常用
- for...in循环
运算符
运算符优先级:算术>比较>逻辑>赋值
- 算术运算符:加减乘除%,除加法外其他都有隐式数据类型转换功能
- 逻辑运算符:&&常用来替代if,||常用来替代else,!
- 赋值运算符:+,- ,+=,-=,*=,/=,%=
- 比较运算符:大于,小于,大于等于,小于等于,双等,三等,!=, !==
数字
- tofixed(保留几位小数可以四舍五入)
- 字符串转数字
- Number()严格转换
- parseint()保留整数
- parseFloat()保留小数
- 布尔值转数字
true=1,false=0 - 对象转数字
把[]通过toString()转成“”字符串,再通过Number()把“”转成数字