今天開發需要一個簡單的功能,就是把字符串的變量用值來替換。代碼如下://替換變量為值String.prototype.replaceVariables = function(){var variables = this.getVariables();
//獲取變量數組for
(var i = 0; i < variables.length; i++) {
var reg = new RegExp(variables[i],"g")
this = this.replace(reg,i);
//報錯?。?!this不能賦值}}//返回變量數組String.prototype.getVariables = function(){var variableReg = new RegExp("[A-Z]+[0-9]+");return this.match(variableReg);}調用方法:var _formula1 = 'IF(BG4=="",BG4,"")';//BG4是一個變量標識 需要替換_formula1.replaceVariables();錯誤提示:這里this指向的應該是_formula1對象,replace替換后會返回新對象,再把新對象賦值給this,我覺得邏輯上應該沒問題。 麻煩大家幫我看看我想的哪里出問題了。。。謝謝了。
js中關于this的指向的疑問?
HUWWW
2018-09-01 09:06:50