1、在JavaScript中可以使用arguments.length来模拟重载。
2、由于JavaScript中的字符串是不能变长的,看一下代码:
var s = "hello"; for(var i = 0; i < 1000; i++){ s += i; } return s;
它的执行步骤如下:
1、创建一个字符串存储s;
2、创建存储i的字符串;
3、创建存储链接结果的字符串;
4、把s的当前内容复制到结果中;
5、把i复制到结果中;
6、更新s,使它指向结果。
每次的拼接都要执行这些步骤,严重影响了速度,解决的方法是使用join()方法,它只有在调用这个方法的时候进行拼接操作。代码如下:
它的执行步骤如下:
1、创建存储结果的字符串;
2、把每个字符串复制到结果的合适位置。
var arr = new Array(); arr[0] = "hello"; for(var i = 1; i < 1000; i++){ arr[i] = i; } var s = arr.join(""); return s;