求页面中出现最多次数的标签及其次数
function count() {
var tags = document.getElementsByTagName('*'); //获取所有的元素
var obj = new Array();
var tag = null;
var max = 0;
for (var i = 0; i < tags.length; i++) {
var item = tags[i].nodeName;
if (obj[item]) {
obj[item]++;
if (max < obj[item]) {
max = obj[item];
tag = item;
}
} else {
obj[item] = 1;
}
}
console.log(max, tag);
}
求数组中重复次数最多的元素及重复次数
function func (arr) {
var obj = new Array();
var k = null;
var key = null;
var max = 0;
for (var i = 0; i < arr.length; i++) {
k = arr.charAt(i);
if (obj[k]) {
obj[k]++;
if (max < obj[k]) {
max = obj[k];
key = k;
}
} else {
obj[k] = 1;
}
}
console.log(key + "" + max);
}
统计字符串中每种字符出现的次数,出现次数最多的是哪个以及出现了多少次
var str = "helloword";
for (var i = 0, hash = {}; i < str.length; i++) {
if (hash[str[i]]) {
hash[str[i]]++;
} else {
hash[str[i]] = 1;
}
}
console.dir(hash);
将html中关于http、https的字符串替换成带有a标签的字符串,并且可以点击进入
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>替换</title>
</head>
<body>
<div id="container">欢迎进入百度首页:http://www.baidu.com</div>
<script type="text/javascript">
var container = document.getElementById('container');
var str = container.innerHTML;
var reg = /(http:\/\/|https:\/\/)((\w|=|\?|\.|\/|&|-)+)/g;
str = str.replace(reg, "<a href='$1$2'>$1$2</a>");
container.innerHTML = str;
</script>
</body>
</html>
效果如下
数组去重
方法一:
function repeat(arr) {
for (var i = 0, result = []; i < arr.length; i++) {
if (result.indexOf(arr[i]) == -1) {
result.push(arr[i]);
}
}
return result;
}
方法二:
function repeat(arr) {
for (var i = 0, hash = {}; i < arr.length; i++) {
if (hash[arr[i]] == undefined) {
hash[arr[i]] = 1;
}
}
var i = 0;
var result = [];
for (result[i++] in hash) ;
return result;
}
持续更新中……