困擾我很久的一個問題:寫程式時常遇到用Split切字串再取最後一節的情境,例如:「DomainName\Account」取Account、「Oracle.ManagedDataAccess.Client.OracleConnection」取OracleConnection。
這類需求用C#寫,當然二話不說,Split()加LINQ .Last()一行搞定:
"Domain\\Account".Split('\\').Last()
但同樣一件事搬到JavaScript我就發傻了,只會中繼傳球,無法由外野直傳本壘:
var ary = "Domain\\Account".split('\\');
var result = ary[ary.length - 1];
這招從VB年代寫到今天,除了囉嗦一點,也沒什麼不對。但平日一行就搞定的事硬是多生一個變數寫成兩行,怎麼都覺笨拙。今天認真爬文才猛然驚醒,屁股加個pop()不就好了。
"Domain\\Account".split("\\").pop();
為笨了這麼久乾一杯…