js 判断输入整数的位数
小弟我想利用 js 实现一下这个功能.通过对某个变量(数字)利用某个方法可以判断其是几位数,比如10为2位数字,100为3位数字.而通过获得位数的不一样进而进行不同的操作.如果是10那么就性行某一操作.如果是白那么就进行另一操作.当然估计这要用到switch()小弟的js部分代码如下
case 1 : //模式1 (10页缩略,首页,前页,后页,尾页)
//this.page 便是我要判断的数字根据数字的位树的大小进行不同的操作
switch(判断位数操作的结果)
case 十位数字:
strHtml += '<span class="count">Pages: ' + this.page + ' / ' + this.pageCount + '</span>';
strHtml += '<span class="number">';
if (prevPage < 1)
{
strHtml += '<span title="First Page">«</span>';
strHtml += '<span title="Prev Page"></span>';
}
else
{
//这里toPage的意思是返回一个 Url 地址和地址中的参数
strHtml += '<span title="First Page"><a href="javascript:' + this.name + '.toPage(1);">«</a></span>';
strHtml += '<span title="Prev Page"><a href="javascript:' + this.name + '.toPage(' + prevPage + ');"></a></span>';
}
if (this.page % 10 == 0)
{
var startPage = this.page - 9;
}
else
{
var startPage = this.page - this.page % 10 + 1;
}
if (startPage > 10)
//前十页 "..." 的显示
strHtml += '<span title="Prev 10 Pages"><a href="javascript:' + this.name + '.toPage(' + (startPage - 1) + ');">...</a></span>';
for (var i = startPage; i < startPage + 10; i++)
{
if (i > this.pageCount)
break;
if (i == this.page)
{
strHtml += '<span title="Page ' + i + '">[' + i + ']</span>';
}
else
{
strHtml += '<span title="Page ' + i + '"><a href="javascript:' + this.name + '.toPage(' + i + ');">[' + i + ']</a></span>';
}
}
if (this.pageCount >= startPage + 10)
//后十页 "..." 的显示
strHtml += '<span title="Next 10 Pages"><a href="javascript:' + this.name + '.toPage(' + (startPage + 10) + ');">...</a></span>';
if (nextPage > this.pageCount)
{
strHtml += '<span title="Next Page"></span>';
strHtml += '<span title="Last Page">»</span>';
}
else
{
strHtml += '<span title="Next Page"><a href="javascript:' + this.name + '.toPage(' + nextPage + ');"></a></span>';
strHtml += '<span title="Last Page"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">»</a></span>';
}
strHtml += '</span>';
break;
case 白位数字:
strHtml += '<span class="count">Pages: ' + this.page + ' / ' + this.pageCount + '</span>';
strHtml += '<span class="number">';
if (prevPage < 1)
{
strHtml += '<span title="First Page">«</span>';
strHtml += '<span title="Prev Page"></span>';
}
else
{
//这里toPage的意思是返回一个 Url 地址和地址中的参数
strHtml += '<span title="First Page"><a href="javascript:' + this.name + '.toPage(1);">«</a></span>';
strHtml += '<span title="Prev Page"><a href="javascript:' + this.name + '.toPage(' + prevPage + ');"></a></span>';
}
if (this.page % 100 == 0)
{
var startPage = this.page - 99;
}
else
{
var startPage = this.page - this.page % 100 + 1;
}
if (startPage > 100)
//前十页 "..." 的显示
strHtml += '<span title="Prev 10 Pages"><a href="javascript:' + this.name + '.toPage(' + (startPage - 1) + ');">...</a></span>';
for (var i = startPage; i < startPage + 100; i++)
{
if (i > this.pageCount)
break;
if (i == this.page)
{
strHtml += '<span title="Page ' + i + '">[' + i + ']</span>';
}
else
{
strHtml += '<span title="Page ' + i + '"><a href="javascript:' + this.name + '.toPage(' + i + ');">[' + i + ']</a></span>';
}
}
if (this.pageCount >= startPage + 100)
//后十页 "..." 的显示
strHtml += '<span title="Next 10 Pages"><a href="javascript:' + this.name + '.toPage(' + (startPage + 100) + ');">...</a></span>';
if (nextPage > this.pageCount)
{
strHtml += '<span title="Next Page"></span>';
strHtml += '<span title="Last Page">»</span>';
}
else
{
strHtml += '<span title="Next Page"><a href="javascript:' + this.name + '.toPage(' + nextPage + ');"></a></span>';
strHtml += '<span title="Last Page"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">»</a></span>';
}
strHtml += '</span>';
break;
break;
--------------------编程问答-------------------- 楼主想问什么? --------------------编程问答-------------------- 晕呼呼,搞明白问题在说啊 --------------------编程问答-------------------- 把整数用ToString()转换为字符串,然后用Length属性计算出字符串的长度。 --------------------编程问答-------------------- 用 所得数/(10的n次方)
n=0 1
n=1 10
n=2 100
依次类推 --------------------编程问答--------------------
--------------------编程问答-------------------- 用C# 处理吧,(如果你实在要用JS,那就用C# 处理完后让JS调用)
<script type="text/javascript">
<!--
var str=10
alert(str.toString().length);
str=20;
alert(str.toString().length);
str=200;
alert(str.toString().length);
str=2000;
alert(str.toString().length);
-->
</script>
/// <summary>
/// 字符串中包含数字的个数
/// </summary>
public static int CountNumInString(string str)
{
string nums = string.Empty;
CharEnumerator ce = str.GetEnumerator();
while (ce.MoveNext())
{
byte[] array = new byte[1];
array = Encoding.ASCII.GetBytes(ce.Current.ToString());
int ascii = (short)(array[0]);
if (ascii >= 48 && ascii <= 57)
nums += ce.Current;
else
continue;
}
return nums.Length;
} --------------------编程问答-------------------- <script>
var aa="10";
alert(aa.length);
</script> --------------------编程问答-------------------- 晕,不会吧.我原来也以为是问几位的问题,但后来想lz已经写了这么多js了,不可能再问这种问题吧?
switch (i.toString().length)
{
case 1://个位
} --------------------编程问答-------------------- 将整数转为String型,
String.length 就是位数了 --------------------编程问答-------------------- 长度,
csdn怎么老丢东西 我记得回复过的
补充:.NET技术 , ASP.NET