两个部分,一个是如题的直接上代码;二是外一则的小体会。
var get_contain_chinese_number=function(check_str){ chineseArray=[]; check_str.replace((/[\u4e00-\u9fa5]/gm), function() { var text = arguments[0]; var index = arguments[arguments.length - 2]; chineseArray.push({ text: text, index: index }); return text; }); return chineseArray.length; }
2.js里面的this对象
var A={a:function(e){alert(e)},b:function(){console.log(this);this.a(1)}}
A.b();//直接这样调用不报错,控制台里面看到this是一个有a和b两个函数的Object;
h=A.b
h();//报错,控制台里面看到this是Window,Window没有a这个函数,所以报错this.a不是一个方法
但是,如果改成
var A={a:function(e){alert(e)},b:function(){A.a(1)}}
这样子就都不会报错。