Başka bir dil JavaScript dışında ayracı başlangıç konumu arasındaki fark (aynı satır ve bir sonraki satır) var mı?
Rastgele JavaScript kalıpları O'Reilly kitap okurken ben, bugün, ilginç bir şey (referans için sayfa 27) buldum.
Bazı durumlarda Javascript, eğer ayracı başlangıç konumu farklı ise bir fark yoktur.
function test_function1() {
return
{
name: 'rajat'
};
}
var obj = test_function1();
alert(obj); //Shows "undefined"
Süre
function test_function2() {
return {
name: 'rajat'
};
}
var obj = test_function2();
alert(obj); //Shows object
Böyle bir davranış var orada başka bir dil mi? Eğer öyleyse, o zaman kesinlikle..:) benim için bir alışkanlık değiştirmek zorunda kalacak
PHP, C, C , Java, ruby ve esas hakkında endişe duyuyorum.
CEVAP
Herhangi birnoktalı virgül (ama yerine yeni satır) ifadeleri sınırlandırmak için güvenmez dil potansiyel olarak bu sağlar. DüşününPython:
>>> def foo():
... return
... { 1: 2 }
...
>>> def bar():
... return { 1: 2 }
...
>>> foo()
>>> bar()
{1: 2}
Benzer bir durumda inşa etmek mümkün olabilirVisual Basicama kafamın üst kapalı VB değerler yerleştirilebilir oldukça kısıtlayıcı olduğu için nasıl olduğunu çözemedim. Ama şu statik analiz ulaşılamaz kod şikayetçi olmadığı sürece çalışması gerekir:
Try
Throw New Exception()
Catch ex As Exception
Throw ex.GetBaseException()
End Try
' versus
Try
Throw New Exception()
Catch ex As Exception
Throw
ex.GetBaseException()
End Try
Bahsettiğiniz dillerden,Rubyaynı özellik vardır. PHP, C, C ve Java sadece yeni satır boşluk olarak atın çünkü noktalı virgül ifadeleri sınırlandırmak için gerektirmez.
İşte Ruby Python örnek kod: eşdeğer
>> def foo
>> return { 1 => 2 }
>> end
=> nil
>> def bar
>> return
>> { 1 => 2 }
>> end
=> nil
>> foo
=> {1=>2}
>> bar
=> nil
Ekran arasındaki fark nedir: satır içi...
'pencere arasındaki fark ne.konum...
Arasındaki fark &;\n" quot; ve Çev...
Bir tabloda iki satır arasındaki boşlu...
Bir SQLite veritabanı aynı anda birden...