es5:
**一:**use strict:嚴格模式。
1:在es5之前,給未宣告的變數賦值,會在全域性建立變數,造成全域性汙染,啟用嚴格模式則會報錯。
2:在es5之前,有時執行一段**時,沒執行成功,但是不報錯(靜默失敗),在嚴格模式下會將靜默失敗提公升為報錯。
3:普通函式呼叫中的this不再指向window,而是undefined
4:強烈不建議使用遞迴(效率太低)
//斐波那契數列:
function fei(num)
console.log(fei(100))
用迴圈代替遞迴計算斐波那契數列
// f1 f2 fn
// 1 1 2
// 1 2 3
// 2 3 5
// 3 5 8
function fei(n)
return fn
} console.log(fei(100))
二:保護物件
var nums = [2,3,4,5]
bind:永久繫結。將傳入引數的方法賦給呼叫的方法。需要再呼叫一次方法。
var a=10
var obj=
} settimeout(obj.fun,1000)//10
分析:obj.fun就是將function放到了這裡,當一秒後執行時與obj再無關係。指向window。
settimeout(obj.fun.bind(obj),1000)//20
重寫indexof方法。
因為indexof是es5裡的方法,低版本瀏覽器不支援(ie6之前)。
var arr = [3,1,3,2,5,4,3,6]
array.prototype.myindexof=function(num,starti)
return newarr
} arr1 = arr.mymap(function(elem,i,arr))
console.log(arr)
console.log(arr1)
斐波那契數列 斐波那契數列python實現
斐波那契數列 fibonacci sequence 又稱 分割數列 因數學家列昂納多 斐波那契 leonardoda fibonacci 以兔子繁殖為例子而引入,故又稱為 兔子數列 指的是這樣乙個數列 1 1 2 3 5 8 13 21 34 在數學上,斐波納契數列以如下被以遞推的方法定義 f 1 ...
迴圈斐波那契數列 斐波那契數列應用
什麼是斐波那契數列 斐波那契數列指的是這樣乙個數列 1,1,2,3,5,8,13,21,34,55,89,144 這個數列從第3項開始,每一項都等於前兩項之和 台階問題 有一段樓梯有10級台階,規定每一步只能跨一級或兩級,要登上第10級台階有幾種不同的走法?這就是乙個斐波那契數列 登上第一級台階有一...
斐波那契堆
以下是實現的程式 肯定可以再優化的。include include include include using namespace std class node delete m child m child null class fibonacciheap node insert int key v...