需求:
一串数字比如:12345
要求依次输出 1/2/3/4/5.
通常的写法:
var strAuthCode = "12345";
var str_write = strAuthCode.substring(0,1)
var str_read = strAuthCode.substring(1,1);
var str_delete = strAuthCode.substring(2,1);
var str_submit = strAuthCode.substring(3,1);
var str_release = strAuthCode.substring(4,1);
alert("Write:" + str_write + "/n" +
"Read:" + str_read + "/n" +
"Delete:" + str_delete + "/n" +
"Submit:" + str_submit + "/n" +
"Release:" + str_release );
结果和我们想的还真是不一样: 1 / / 2/23/234.
查了下帮助,原来substring的第二个参数是取到原字符串的位置,而不是我们想像的取几个字符,改写代码如下:
var strAuthCode = "12345";
var str_write = strAuthCode.substring(0,1)
var str_read = strAuthCode.substring(1,5).substring(0,1);
var str_delete = strAuthCode.substring(2,5).substring(0,1);
var str_submit = strAuthCode.substring(3,5).substring(0,1);
var str_release = strAuthCode.substring(4,5).substring(0,1);
alert("Write:" + str_write + "/n" +
"Read:" + str_read + "/n" +
"Delete:" + str_delete + "/n" +
"Submit:" + str_submit + "/n" +
"Release:" + str_release
);
输入结果正确了,即1/2/3/4/5.