//实现一个javascript函数,要求把给定的js object对象中的所有以p开头后面跟1到多个数字(如:p234)命名的属性的值按属性名中数字值的顺序排序输出。
<script type=text/javascript>
function(obj){
var keyArry = []; //存的是key
var rtnArray = []; //存的是value
var index = 0;
for(var value in obj){
if(value.indexOf("p") == 0){ //是以P开头的
//判断p寿面的是不是数字
var temp = value.subString(1);//用于提取字符串中介于两个指定下标之间的字符。
if (/^\d+$/.test(temp)) { //test() 方法用于检测一个字符串是否匹配某个模式.[RegExpObject.test(string)]
//符合要求,存起来
keyArry[index] = Number(temp);//把对象的值转换为数字。
rtnArray[index] = obj[value]; //把值存起来
index++;
}
}
}
//按key中的数字值来排序
for(var i = 0;i<keyArry.length-1;i++){
for(var j = i+1;j<keyArry.length;j++){
if(keyArry[i]>keyArry[j]){
var temp = keyArry[i];
keyArry[i] = keyArry[j];
keyArry[j] = temp;
temp = rtnArray[i];
rtnArray[i] = rtnArray[j];
rtnArray[j] = temp;
}
}
}
}
</script>
javaScript 小例子
最新推荐文章于 2020-02-23 20:18:01 发布