Son birkaç ayda, JavaScript hakkında çok şey öğrendim. Dilleri yıllardır suistimal ettiğim için, şimdi dili daha iyi anladığımı söyleyebilirim ve love 'a işlevsel doğasının faydaları için geldim.
Son zamanlarda Scheme'i öğrendim, ama bu sadece eğlence için.izin ver veya var izin ver
for (var i=0;i<someArray.length;i++)
{
console.log(someArray[i]);
}
console.log(i);//will log someArray's length
Oysa:
for (let i=0;i<someArray.length;i++)
{
console.log(someArray[i]);
}
console.log(i);//undefined
MDN reference Tarama ben JS, blok kapsamını eksik olsa, çok Sistem'in
let
gibi belirli bir bloğa değişken yerel bildirmek için kullanılabilecek bir anahtar kelime, var olduğunu fark
Şimdi bilmek istediğim şudur: Neden let
daha sık kullanılmıyor? X-tarayıcı desteği ile bir ilgisi var mı? Bu daha az bilinen-iyiler biri mi?
Kısacası, let
üzerinden var
kullanmanın avantajları nelerdir, uyarılar nelerdir? Tek bir blokta şey, daha tutarlı (çift beyanlar (ECMA6 taslaklar olsa Bunu düzeltmek). fonksiyon organları dışında, TypeError
yükseltirseniz
Bildiğim kadarıyla söyleyebilirim, let
davranış olduğunu
olmak dürüst, ayrı bu özellik/anahtar kelime çok iyi bilinen olmama gelen, geçici bir değişken daha okunabilir kod için yapar nerede yerde döngüler için let
kullanılmasına karşı herhangi argüman düşünmek veya mücadele.
cevabınızı (5 dakika daha) kabul, ama ... Aptal kesinlikle haklısın, ben de umutlarınızı paylaşılamıyor olsa olacak düşünüyorum Şu anda Chrome'u kullanıyorum ve konsolumu açmak için zamanımı aldım ve x = 1'e izin vermeyi denediysem, orada bir sorun olduğunu biliyordum. Aptalca, ama yine de: '' Bu soruyu okuyan herkesin, ECMA posta listesindeki ASAP'ı destekleme isteğini yerine getirmesini umarız :) –
@EliasVanOotegem: Evet, son olarak hedeflerinin Aralık 2013 olduğunu duyduk. biraz beklemiştiniz, ancak deneysel JavaScript'i etkinleştirmek için bir başlangıç bayrağı ayarlayarak Chrome'da uygulanan bazı yeni özellikleri etkinleştirebilirsiniz. Bunların arasına dahil olup olmadığından emin değiliz. Bunları ayarlamak için, chrome adres çubuğuna 'chrome: // flags /' yazın. –
Sadece deneysel özellikler etkinleştirildi ve 'izin ver' destekleniyor, ancak FF ve krom arasında bazı farklar var, ancak bunun bir kısmı konsola _eval_'ın koduna göre olabilir. Neyse büyük +1 ve –