Javascript综合复习题-程序实现题

1.写一个字符串反转函数,实现字符串倒序。
document.write(str.split("").reverse().join(""));

2.请借助Array内置对象的相关方法,实现字符串倒序排列。
document.write(Array.from(str).reverse().join(""));

3.写一个函数,能获取文件后缀;

var text ="12345678.txt";

var loc=text.lastIndexOf(".")+1;

document.write(text.substring(loc));

4.请将字符串open_my_door这种形式,转成OpenMyDoor的形式。

var text ="open_my_door";

var newArr=text.split("_");

var str=new Array(3);

for( var i=0;i<newArr.length;i++){

    str[i]=newArr[i].substring(0,1).toUpperCase() + newArr[i].substring(1);            

}



document.write(str.join(""));

5.写一个实现字符串首字母大写的函数;

var str="ralkhasdlfho";

var newStr;

function change(str){

  newStr=str.substring(0,1).toUpperCase()+str.substring(1);

}

6.写一个函数,实现去除字符串左右空格;

var str="  yex   j00  ";
var newstr=str.replace(/(^\s*)|(\s*$)/g,'');
document.write(newstr);

7.写一个获取斐波那契数列前N项的函数,返回一个数组,将数列中的每个数

值存入数组;

function fb(n) {
    if(n == 1 || n == 2) {
        return 1
    }
    return fb(n - 1) + fb(n - 2)
}

8.写一个获取阶乘的函数,返回一个字符串,其中是阶乘表达式和结果;

9.用递归的思想,写一个求取n的阶乘的函数。

if(n==1||n==0) return 1;//如果参数bai是0或者1返回1
return n*fun(n-1);//否则返回n和下次递归的积

10.写一个函数,能获取两个日期相差天数;

    datedifference=function(sDate1, sDate2) {    
        var dateSpan,
            tempDate,
            iDays;
        sDate1 = Date.parse(sDate1);
        sDate2 = Date.parse(sDate2);
        dateSpan = sDate2 - sDate1;
        dateSpan = Math.abs(dateSpan);
        iDays = Math.floor(dateSpan / (24 * 3600 * 1000));
        return iDays
    };

11.写一个函数,能求取某个日期是星期几;

<!DOCTYPE html>
<html>
<body>
<p id="demo">
Click the button to display todays day of the week.
</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction()
{
var d = new Date();
var weekday=new Array(7);
weekday[0]="Sunday";
weekday[1]="Monday";
weekday[2]="Tuesday";
weekday[3]="Wednesday";
weekday[4]="Thursday";
weekday[5]="Friday";
weekday[6]="Saturday";
var x = document.getElementById("demo");
x.innerHTML=weekday[d.getDay()];
}
</script>
</body>
</html>

12.利用正则和键盘事件,写一个只能输入数字,如果输入非数字,当按键抬起,

会自动消失的input文本控件;

13.利用正则和鼠标事件,写一个过滤HTML标签的文本域控件,如果在文本域中

输入html标签,当光标一旦离开文本域,则其中所有html会自动消失;14.写一个用户注册表单中对用户名的验证。要求是:用户名不可以为空,用户

名必须是3-15位中文。

15.写一个点击“大”、“中”、“小”三个超链,实现页面部分文字随之分别为:

18,14,12号字体的切换效果。

16.写一个当鼠标移入和移出,图片切换的效果。

17.假设a.html和b.html在同一个文件夹下面,请在a.html页面中使用

javascript代码实现:在浏览器中打开a.html五秒钟后,自动跳转到b.html 页面。

function go2b(){
window.location = “b.html”;
window.close();
}

setTimeout( “go2b()”,5000 ); //5秒钟后自动执行go2b()

18.假设a.html和b.html在同一个文件夹下面,请在a.html页面中使用

javascript代码实现:点击这个a.html中的“打开”,弹出一个新窗口。该窗口宽500px,高度为450px,该窗口中显示的页面是b.html页面。

19.求取1-50之间的随机数,不可以出现重复。如果不足两位,则在该数字前补

足“0”。

20.实现一个在页面指定位置,出现一个跳动的时钟效果。

21.写代码,能实现对多选项至少勾选一项的验证;

22.实现多选项的全选、取消全选的效果;

23.实现多选项的全选、反选的效果。

         function cc(number){
             //获取所有checkbok对象
             var chekboxs=document.getElementsByName("song")
             for(var i=0;i<chekboxs.length;i++){
                 if(number==1){
                     chekboxs[i].checked=true
                                else if(number==2){
                     chekboxs[i].checked=false
                 }else if(number==3){
                     chekboxs[i].checked=!chekboxs[i].checked
                 }
             }
             statistics()
         }
         function statistics(){
            var span= document.getElementById("mySpan")
             var checkbox=document.getElementsByName("song")
             var total= checkbox.length
             var current=0;
             for(var i=0;i<total;i++){
                 if(checkbox[i].checked){
                     current++
                 }
             }
             span.innerHTML="当前选中"+current+"首,共"+total+"首"
         }

24.利用DOM知识,实现获取dl标签下dd标签中的内容,也就是希望得到“xxx”。

不允许对现有的HTML代码做任何改动。

25.找到数组["c","a","z","a","x","a"]中每一个元素出现的次数。

	var arr = ["c","a","z","a","x","a"]
		var obj = {}
		for(var i=0;i<arr.length;i++){
			//arr[i]
			if(obj[arr[i]] == undefined){
				obj[arr[i]] = 1
			}else{
				obj[arr[i]]  +=1
			}
            
		}
		console.log(obj)

26.编写一个方法去掉一个数组中的重复元素。
var ar = [1,2,3,4,5,1,2,4,2]
var newArr = []
for(var i = 0;i<arr.length;i++){
if(newArr.indexOf(arr[i]) == -1){
newArr.push(arr[i])
}
}

    console.log(newArr)
posted @ 2021-02-28 23:04  yuanliy  阅读(515)  评论(0编辑  收藏  举报