基础面试题

1,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20

    //判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20
    var c =  /^[a-zA-Z]\w{4,19}$/;
   //  /是转义   ^  是开头   [a-zA-Z]是字母出现一次    \w是任意字符   {4,11}是长度 $ 是结束
   console.log(c.test()); // true
2,写运行结果
public class A {
    static{
    	System.out.println("1");
    }
    public A(){
    	System.out.println("2");
    }
}

public class Hello {
    public static void main(String[] args) {
		A a = new B();//1a2b
		 a=new B();//静态方法只走一遍2b
	}
}
3,排序
public class MaoPao {
    public static void main(String[] args) {
		int intArr[]={5,9,1,2,4,1,3,8,0,7};
      
		paixu(intArr);
		for(int i=0;i<intArr.length;i++){
			if(i==intArr.length-1){
				System.out.print(intArr[i]);
			}else{
			System.out.print(intArr[i]+",");
			//0,1,1,2,3,4,5,7,8,9
			 }
		}
		
		
	}
    public static void paixu(int[] arr){
    	for(int x=0;x<arr.length-1;x++){
    		for(int y=0;y<arr.length-1-x;y++){
    			if(arr[y]>arr[y+1]){
    				int temp = arr[y];
    				arr[y]=arr[y+1];
    				arr[y+1]=temp;
    			}
    		}
    	}
    }
}
4判断对称字符或者数组
public class SymmetryNumber {
	 public static boolean isSymmetryNumber(long n) {  
	        String str = String.valueOf(n);  
	        return isSymmetString(str);  
	    }  
	    public static boolean isSymmetString(String str) {  
	        int count = str.length();  
	        String str1 = str.substring(0, count / 2); 
	        System.out.println("str1:"+str1);
	        String str2 = str.substring(((count & 0x1) == 0)  
	                ? (count / 2)  
	                : (count / 2 + 1));  
	        StringBuffer strBuf = new StringBuffer(str2);  
	        str2 = strBuf.reverse().toString();  
	        return str1.equals(str2);  
	    }  
	  
	    public static void main(String[] args) {  
	        for (long i = 1000; i < 2000; i++) {  
	            System.out.print(i);  
	            System.out.println(":\t" + SymmetryNumber.isSymmetryNumber(i));  
	        }  
	    	String s="helloworld";
	    	System.out.println(isSymmetString(s)); 
	    }  
}
5,javascript中的基本数据类型有null,undefined,boolean,number,string

6,IE 火狐浏览器的差异

window.event对象差异 

IE:有window.event对象 
FF:没有window.event对象。可以通过给函数的参数传递event对象。如οnmοusemοve=doMouseMove(event) 

获取鼠标当前坐标  
IE:event.x和event.y。 
FF:event.pageX和event.pageY。 
通用:两者都有event.clientX和event.clientY属性。 

鼠标当前坐标(加上滚动条滚过的距离) 
IE:event.offsetX和event.offsetY。 
FF:event.layerX和event.layerY。 

标签的x和y的坐标位置:style.posLeft 和 style.posTop  
IE:有。 
FF:没有。 

通用:object.offsetLeft 和 object.offsetTop。 

7,浏览器加载渲染页面的流程

       1、输入网址。 
  2、浏览器查找域名的IP地址。 
  3. 浏览器给web服务器发送一个HTTP请求 
  4. 网站服务的永久重定向响应 
  5. 浏览器跟踪重定向地址 现在,浏览器知道了要访问的正确地址,所以它会发送另一个获取请求。 
  6. 服务器“处理”请求,服务器接收到获取请求,然后处理并返回一个响应。 
  7. 服务器发回一个HTML响应 
  8. 浏览器开始显示HTML 

  9. 浏览器发送请求,以获取嵌入在HTML中的对象。在浏览器显示HTML时,它会注意到需要获取其他地址内容的标签。这时,浏览器会发送一个获取请求来重新获得这些文件。这些文件就包括CSS/JS/图片等资源,这些资源的地址都要经历一个和HTML读取类似的过程。所以浏览器会在DNS中查找这些域名,发送请求,重定向等等…

8,设计一个权限系统,假设系统功能不多,用户不多.

用户太多就不能以用户细分权限,应该把用户划分各种角色,像管理员,和普通用户,建立角色表,然后给用户表一个角色表id做关联,然后再做一个权限表,这个表记录所有的访问url,再做一个关联表记录权限表id和角色表id,当添加一个权限给对应角色时就是把权限表的id和角色表的id做关联,做一个全局请求的拦截器,获取对应用户id,和请求的url,通过用户id匹配角色,再通过角色id去查对应关联表里面这个url有没有跟角色关联,然后决定是否放行

9,javaScript 继承

 <script type="text/javascript">  
    function  Person(name,age){  
        this.name=name;  
        this.age=age;  
        this.sayHello=function sayHello(){  
            alert("你好"+name);  
        }  
    }  

    //call方式  
    function student(name,age,score){  
        Person.call(this,name,age); 
        this.score=score;
        this.Score=function sayScore(){  
            alert();  
        }  
    }  

10,  

1).请统计每一个IP登录的次数与点击的次数(输出列: ip、登录数、点击数).

2).找出登录数超过10次的IP(输出列:ip地址).

Access_Log表的SQL语句:(4分)

create table Access_Log(

id int identity primary key, access_ip varchar(15), access_time smalldatetime, access_url varchar(255), session_id

varchar(255));

b、 请统计每一个IP登录的次数和点击的次数,输出列:IP,登录数,点击数:(4分)

select access_ip,count(distinct session_id) as '登录数',count(access_ip) as '点击数' from access_log group by access_ip

c、 请找出登录次数超过10次的IP地址,输出列:IP,点击数:(3分)

select access_ip,count(access_ip) as '点击数' from access_log group by access_ip having count(distinct session_id)>10



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值