【发布时间】:2011-02-03 08:57:35
【问题描述】:
我试图获取字符串中相应字符的索引号。
我的意思是循环确实可以使用字符串方法charAt() 和indexOf() 将字符串中的字符视为字符“数组”,对吧?
代码如下:
/** ****** WINDOW ONLOAD EVENT HANDLER **************** */
window.onload = function(){
// DOM elements
var theButton = document.getElementById('theButton');
var form = document.formISBN;
var numberField = document.getElementById('theInput')
theButton.onclick = function(){
var number = numberField.value;
console.log(number)
controlNr = calculControlNr(number);
// console.log(controlNr);
}
}
function calculControlNr(number) {
number = number.replace(' ','','g');
number = number.replace('-','','g');
var sum = 0;
var sumEven = 0;
var sumUneven = 0;
var factor = 3;
var numberExtract = number.substr(0,11);
console.log(numberExtract.length)
for (var i = 0; i < numberExtract.length; i++) {
console.log(numberExtract.indexOf(numberExtract.charAt(i)));
}
}
【问题讨论】:
-
欢迎来到 Stack Overflow!是的,您可以遍历字符串中的字符并使用
charAt来检索它们。您能否更具体地说明您的问题是什么?我很想帮忙,但我不确定你在问什么。 -
您好,感谢您的热烈欢迎!我的目标是识别字符串中每个字符的索引号(就像在数组中一样),这样我就可以从字符串中取出字符并使用这些字符在循环中使用 parseInt() 进行计算。 这个我想将索引号作为控制台输出查看的方式。索引号应该是 0,1,2,3,但现在控制台输出类似于 7,3,2,2,这有点奇怪。
-
其他地方一定有错误。如果我隔离该循环并为
numberExtract提供一个虚拟值,那么它可以完美运行。
标签: javascript arrays string