代碼:
<script type="text/javascript" charset="utf-8">
// 偽數組(ArrayLike)
var jqObj = {
0: 'one',
1: 'two',
2: 'three',
length: 3
};
//數組
ary = ['one', 'two', 'three'];
// 將偽數組(ArrayLike)轉成數組
function jqObjToArray(json){
var slice = Array.prototype.slice;
return slice.call(json, 0);
}
// 將數組轉成偽數組(ArrayLike)
function ArrayToJqObj(ary){
var obj = {}, push = Array.prototype.push;
push.apply(obj, ary);
return obj;
}
console.log(jqObjToArray(jqObj));
console.log(ArrayToJqObj(ary));
</script>
return slice.call(json, 0); 輸出["one","two","three"]
return slice.call(json, 1); 輸出["two","three"]
這個他內部運行的原理??為什么 還有這個
push.apply(obj, ary);注 :不是問apply和call 個差別 這個就不用回答了!
js apply和 call的理解 路過的大俠 幫幫忙謝謝!
Cats萌萌
2018-12-06 22:21:21