Начала изучать JS, помогите, пожалуйста сделать задания.
1.Общие символы двух строк.
2.Разные символы двух строк. 3.Сколько раз в числе встречается каждая его цифра. 4.Наиболее популярные цифры числа -- (цифры, которые встречаются в числе наибольшее число раз). Заранее спасибо:) :) |
Цитата:
map={}
number=123344456780
string=number+""
string.replace(/[\s\S]/g, function(symbol){
map[symbol]=string.match(new RegExp(symbol, "g")).length
})
alert(JSON.stringify(map))
//>>>> {"0":1,"1":1,"2":1,"3":2,"4":3,"5":1,"6":1,"7":1,"8":1}
|
Цитата:
str1="abcdee"
str2="bcefydyy"
str3="123456"
str4="345678"
joint=function(str1, str2){
var result=""
str1.replace(/[\s\S]/g, function(symbol){
var re=new RegExp(symbol)
if(re.test(str2)&&!re.test(result)) result+=symbol
})
return result
}
alert("joint: "+joint(str1, str2))
alert("joint: "+joint(str3, str4))
diff=function(str1, str2){
var result=""
str1.replace(/[\s\S]/g, function(symbol){
var re=new RegExp(symbol)
if(!re.test(str2)&&!re.test(result)) result+=symbol
})
str2.replace(/[\s\S]/g, function(symbol){
var re=new RegExp(symbol)
if(!re.test(str1)&&!re.test(result)) result+=symbol
})
return result
}
alert("diff: "+diff(str1, str2))
alert("diff: "+diff(str3, str4))
//>>>> joint: bcde
//>>>> joint: 3456
//>>>> diff: afy
//>>>> diff: 1278
|
Цитата:
map={}
number=33444567778
string=number+""
string.replace(/[\s\S]/g, function(symbol){
map[symbol]=string.match(new RegExp(symbol, "g")).length
})
names=[]
values=[]
for(i in map){
if(!map.hasOwnProperty(i)) break
names.push(i); values.push(map[i])
}
delete i
maxNum=Math.max.apply(null, values)
result=[]
values.forEach(function(n, i){if(n===maxNum) result.push(names[i])})
alert(result)
//>>>> [ '4', '7' ]
|
| Часовой пояс GMT +3, время: 19:02. |