我最近遇到了crockford的Javascript supplant
函數。功能是這樣的 -Javascript替代品
if (!String.prototype.supplant) {
String.prototype.supplant = function (o) {
return this.replace(/{([^{}]*)}/g,
function (a, b) {
var r = o[b];
return typeof r === 'string' || typeof r === 'number' ? r : a;
}
);
};
}
我需要了解這個函數的機制以及這個工作到底有多精確。我遇到了很多解釋,但都傾向於通過引入使事情變得更糟的技術來使事情變得複雜。
試圖尋找
1. regex
解釋這裏
2.邏輯功能(A,B)的代碼塊
3.使用返回語句
你想讓別人一步一步地穿過它嗎? –
不完全,但只是一個簡單的邏輯翻譯... :) – borax12
@ borax12我相當肯定你提供了一個錯誤的代碼示例。我可以通過正則表達式中的空格和代碼中的「智能」引號來判斷。請張貼正確的代碼,否則您將得到錯誤的解釋。此外,你從那裏得到的功能文本不包含解釋? – Tomalak