Google Chrome Extensions(拡張機能) Part12
■ このスレッドは過去ログ倉庫に格納されています
0177名無しさん@お腹いっぱい。
2012/04/06(金) 12:28:59.75ID:n503QDY/0>>const PATTERN_SHORTCUT = RegExp([x for (x in PATTERN)].join('|'), 'gi');
>>textNode.nodeValue = textNode.nodeValue.replace(PATTERN_SHORTCUT, function($0) PATTERN[$0.toLowerCase()]);
「[x for (x in PATTERN)]」と、
「function($0) PATTERN[$0.toLowerCase()]」という、
Firefoxぐらいでしか動作しない配列内包表記と式クロージャが原因だな
上の場合、やってることは単純なので新しめのブラウザならどれでも動くES5のObject.keysで簡潔に代用できるはずだよ
つまり、
const PATTERN_SHORTCUT = RegExp(Object.keys(PATTERN).join('|'), 'gi');
下の場合も簡潔に書き直せる
function($0) { return PATTERN[$0.toLowerCase()]; }
この二箇所をこのように修正すれば動くんじゃないかな
■ このスレッドは過去ログ倉庫に格納されています