SORU
8 ŞUBAT 2012, ÇARŞAMBA


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

JSfiddle Demo

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
8 ŞUBAT 2012, ÇARŞAMBA


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

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ExcelIsFun

    ExcelIsFun

    16 ŞUBAT 2008
  • KliptOut KwazeeKilla

    KliptOut Kwa

    24 ŞUBAT 2010
  • Modus Recordings

    Modus Record

    26 Kasım 2008