屬性操作的兩種方式
1、"." oDiv.style.background window.console.log()
+ []的寫法: oDiv["style"]["background"]
2、[]
+ 數字不能用點,只能用[ ]; 變量必須用[ ];
+ 所有"."能操作的屬性,都能用[]來寫;
=
- "=" 等號是用來賦值的
- "==" 雙等用來比較的,他是非嚴格比較
- 非嚴格比較:只比較結果,不比較數據類型 比如 "2"==2 true
- "===" 三等用來比較的,他是嚴格比較
- 嚴格比較:即比較結果,也比較數據類型 比如 "2" == 2 false
請實現左邊寬度固定為200,右邊寬度自適應; 最少用三種
思路1:左邊浮動,右邊margin-left
思路2:絕對定位
*{
margin: 0;
padding: 0;
}
body{
overflow: hidden;
}
.container div{
position: absolute;
left: 0;
top: 0;
font-size: 30px;
}
.left{
width: 200px;
height: 400px;
background: #ff0000;
word-break: break-all;
}
.right{
width: 100%;
height: 400px;
background: #ff00ff;
margin-left: 200px;
word-break: break-all;
}思路3 :絕對定位
*{
margin: 0;
padding: 0;
}
body{
overflow: hidden;
}
.container div{
position: absolute;
height: 400px;
word-break: break-all;
top: 0;
font-size: 30px;
}
.left{
width: 200px;
left: 0;
background: #ff0000;
}
.right{
background: #ff00ff;
left: 200px;
}思路4 :flex布局
*{
margin: 0;
padding: 0;
}
body{
overflow: hidden;
font-size: 50px;
}
.container{
display: flex;
flex-direction:row;
}
.left{
width: 200px;
height: 400px;
background: #f00;
}
.right{
width: 100%;
height: 400px;
background: #ffff00;
}
出現省略號的樣式
white-space: nowrap; 不折行
text-overflow: ellipsis; 當文本溢出的時候,以什么形式來展示,ellipsis代表省略號
overflow: hidden; 內容溢出隱藏
switch的坑
- 注意:switch是嚴格比較
數據類型
- 數據類型的判斷 type of
- 數據類型包含:
- 基本數據類型:string ,number ,boolean,null,undefined
- 引用數據類型:
- 對象數據類型:object array Date RegExp
- 函數數據類型: function
- null和undefined
- null代表的是現在沒有,以后會有
var data=null; 只有等到請求結束的時候,才能給data賦值; data=[{},{}....]
- undefined 代表現在沒有,以后也沒有
- 函數沒有返回值
- 沒寫return
- 寫了return但沒有返回值
- 對象的某個屬性不存在的時候,我們拿到的值就是undefined;
- 定義了形參,但沒有賦值;
- 函數沒有返回值
- null代表的是現在沒有,以后會有
- 對象object {}
- 語法{k:v,k:v}
- 對象的遍歷,用 for..in
for(var attr in obj){ attr -> 屬性名 obj[attr] -> 屬性值 }
- 對象的增刪改查
- 增 obj.xxx=xxxx;
- 改 obj.xxx=xxxxx; 區別,如果屬性名不存在,屬于增加,如果屬性名存在,屬于更改;
- 查 obj.xxx
- 刪除
- 真刪除
delete obj.xxx - 假刪除
obj.xxx=null;
- 真刪除
- 數組的語法:[x,x,x,x]
- 數組的循環:
- for循環 常用!!!!
- for...in 循環
- 數組的增刪改查
- 增加 ary[x]=xxxx;
- 更改 ary[x]=xxxx;
- 查:通過數組的索引進行查找 ary[x]
- 刪除:通過delete不能刪除,只能通過數組常用的方法來刪除
- splice
- 如果是兩個參數 代表刪除
- 如果是三個參數,且第二個參數為0 ,插入
- 如果是三個參數,且第二個參數不為0, 替換
- splice
- 運算符:
- "+" 具備兩個功能:
- 字符串拼接 優先
- 運算
- "+" 具備兩個功能:
運算符
- 算術運算符: + - * / %
- %的小技巧:有幾種情況就%幾;
- 除了+法,其他幾個都有隱式數據類型轉換的功能
- 比較運算符: > < >= <= == === != !==
- 邏輯運算符: && || !
- 常用&&代替if
bOk && alert('真真');
- 常用||代替else
bOk || alert('假假');
- 賦值運算符: + - += -= *= /= %=
- 運算符的優先級 算術> 比較 > 邏輯 > 賦值
數字 number
- 常用的方法 toFixed(保留幾位小數) 可以四舍五入的保留小數
- 字符串轉數字的方法中,有一個嚴格轉換,兩個非嚴格轉換
- 一個嚴格:Number()
- 兩個非嚴格:
- parseInt() 整數
- parseFloat() 保存小數
- 布爾值轉數字: true-》1 false-》0
- 對象也能轉數字: []->toString()轉成""字符串 -》 把""字符串通過Number() 轉成0
什么是真?什么是假?
- 除了這幾個為假的,其他都是真:
- false "" 0 NaN null undefined
== 數據類型之間的比較
1)對象和對象比較,按照地址進行比較 [] == [] 引用數據類型,是對地址的比較
2)對象和布爾值進行比較,按照數字進行比較 []==![]
3)對象和字符串進行比較,轉成數字 []==""
- 對象和數字進行比較,轉成數字 []==0
- 字符串和數字進行比較,轉成數字 ""==0
- 字符串和布爾值進行比較,轉成數字 ""==false
- 數字和布爾值進行比較 1==true false==0
- null==undefined true; null===undefined false
- NaN==NaN NaN跟誰都不相等,包括他自己