0
我有一個名爲腳本的對象。它包含一個名爲name的變量,其中包含一個字符串。Javascript:new Regexp在字符串連接時銷燬循環迭代器
還有一個包含多腳本腳本對象的數組,該數組稱爲腳本。它的大小爲5
我有一個循環,我想創建一個新的RegExp爲腳本的每個名字對象與級聯「(」:
var scriptName;
for(var i=0; i<scripts.length; i++){
console.log("i = "+i);
scriptName = scripts[i].name+"(";
var newRegex = new RegExp(scriptName, 'g');
}
的問題是,每當我串連腳本[I]。名稱爲「(」 for循環停止工作,而是increamenting我把它停在I = 0。這是奇怪的東陽for循環還是無限期地停止循環代替。
如果我更換
scriptName = scripts[i].name+"(";
與
scriptName = scripts[i].name;
我得到正確的輸出: 0,1,2,3,4
否則我得到的輸出0×5倍
'scriptName'必須是有效的正則表達式。 – gurvinder372
你需要避免大括號爲'\\('直接匹配它'。('在RegEx中有特殊含義,當在正則表達式中找不到')'時,它會拋出錯誤「Unterminated group」。 – Tushar
謝謝我明白! – Elias