1.
var string = "you are";
var text = string;
string = "best";
console.log(text); //輸出"you are"
變量爲一存儲空間,但text=string不是說text指向string的存儲空間,
而是text新建一個存儲空間來存儲string的值
var string = {0:"you are"};
var text = string;
string[0]="best"; //輸出{0:"best"}
//string = {0:"best"}; //輸出{0:"you are"}
console.log(text);
何時爲指向呢?--數組!(對象)
2.
var array1=[1,2,3];
var array2=[3,4,5];
array1.concat(array2);
console.log(array1);
由於concat爲純函數,不會帶來反作用的,如下爲正解:
var array1=[1,2,3];
var array2=[3,4,5];
var array3 = array1.concat(array2);
console.log(array3);
3.
一個很好的驗證閉包的例子
var array =[1,2,3,4,5];
for(var i=0;i<array.length;i++) array[i]+=1;
console.log(array); //輸出[2,3,4,5,6]
var array =[1,2,3,4,5];
function forEach(array,action){
for(var i=0;i<array.length;i++)
// array[i]+=1;
action(array[i]);
}
forEach(array,function(arrayElem){
arrayElem+=1;
});
console.log(array); //輸出[1,2,3,4,5]
來於以前對改變數組則會改變全部指向該數組的元素的認識,對forEach而言能夠實現對每一個元素遍歷,並附加操做,
那麼直接執行改變數組元素的操做,不就會改變原來的數組了!
實際並不會,哪怕forEach並未建立新數組
由於閉包:局部變量會在每次函數調用時從新創立,不一樣的函數調用是不會對其餘函數內的局部變量產生任何的影響
在這裏便是forEach調用的araay[i]已是新建立的一個局部變量了,並不會對上一步函數調用的array產生任何影響
4.例如一個數組[21,21,18,19,21]表明某我的生活在哪一個世紀,
另外一個數組
[{name:"xiaomin",age:23},
{name:"lili",age:22},
{name:"nina",age:18},
{name:"bala",age:25},
{name:"limingming",age:28}
]表明相應的人的基本信息,依次對應着第一個數組的元素,
那麼如何遍歷將同一個世紀的人的平均年齡算出來呢?
4.在作薇薇學院的第二個例子時,發現img和ul元素放在一個包裹塊中,會出現換行,而後設定寬度不合適的話,會出現ul元素顯示不出來(header加了overflow:hidden)
>>>
由於ul是塊元素啊,即便被包含,它仍是會出現上下文換行的啊
解決辦法:
1.設置背景圖片的方法(html裏面沒有img元素)
2.設置img爲absolute,再設置相對於包含塊的偏移
5.怎麼讓文字在div中垂直居中(例如導航欄裏面a元素的文字)?
>>>
百度知道搜出來一個很好的答案:
1.單行垂直居中:
若是一個容器內只有一行文字,那麼設置它的實際高度height和所在行的高度line-height相等是最簡單的.(設定height與line-height相同)
2.若是是一段文字,父元素不限高,能夠採用padding: 20px 0; (設定padding,使上下padding值相同便可)
3.若是是一段文字,父元素有固定高:
div#wrap{height:400px;display:table}
div#content{vertical-align:middle;display:table-cell;}
...//但以上ie6不支持
div#wrap{height:400px;width:700px;position:relative}
div#subwrap{position:absolute;top:50%}
div#content{position:relative;top:-50%}
//實際未測試出居中效果....也不知道問題出在哪html
6.怎麼把ul前面的點去掉?
list-style:none;
7.怎麼讓文本段的首行縮進?
text-indent:2em;
但面對ol標籤時,前面的序號並不能縮進怎麼辦?
8.怎麼讓圖片和文字包括在一塊兒,造成一種相片的感受?
數組