Ben yapıyor şu:Aşağıdakiler arasında herhangi bir fark var mı: window.localStorage ve localStorage?
var store = window.localStorage;
store.setItem()
ama şimdi görüyorum kod bunu:
localStorage.setItem()
de aynı şeyi yaparlar mı?
Ben yapıyor şu:Aşağıdakiler arasında herhangi bir fark var mı: window.localStorage ve localStorage?
var store = window.localStorage;
store.setItem()
ama şimdi görüyorum kod bunu:
localStorage.setItem()
de aynı şeyi yaparlar mı?
Özel tanımlı bir kapsam içinde localStorage
adlı bir değişken bildirmediyseniz, bunlar aynıdır. localStorage
, window.localStorage
anlamına gelir. Aslında genel ad alanında her değişken Örneğin window.<variableName>
olarak erişilebilir:
<script>
function foo() {
// here window.localStorage == localStorage
}
function foo2 {
var localStorage = 10;
// here window.localStorage != localStorage
// since you have a local variable named localStorage
}
</script>
"pencere" JavaScript küresel nesne çatışma için hiçbir şansı varsa bunu ommit böylece, olduğu
window.localStorage ve localStorageWindow
arasında hiçbir fark yoktur
varsayılan önek
küresel nesnepencere olduğunu 0
ancak doğru olan window.localStorage
, localStorage özniteliği pencere nesnesinin bir parçasıdır.
Varsayılan olarak, window.localStorage, localStorage öğesinin, localStorage yazılmasından daha hızlı bulunmasını sağlar.
Bir değişkene bir referansın saklanması onu daha da hızlı hale getirir. Her neyse, bu geliştirmeler modern tarayıcılarda göz ardı edilemezdir. Performansın bir sorun olması durumunda işe yarar.
Her neyse, neden böyle yapıldığına dair bir fikrin var.
Pencere "varsayılan önek" yani "window.x = x" şeklindedir. –