亚信科技2019届实习生招聘笔试题(前端)

亚信来我们学校宣讲,让我们做了笔试题,我选择了前端方向,下面是我的试题整理还有我的答案(不一定正确)以及知识点整理,如果有错误请大神们指正。这份笔试题涉及到了HTML CSS JavaScript jQuery 数据结构 前端工具,其实都是比较基础的题目,当然有一部分知识我确实不是很清楚,所以也写不出很好的解析,这部分以后一定会来更新补充。


1.这段代码输出什么
    if (new Boolean(false)) {
	console.log('True');
    }else{
	console.log('False');
    }
 A.True
 B.False
答案:A.True

解析:涉及到逻辑环境中的自动类型转换

a. 当数字在逻辑环境中执行时,会自动转为布尔类型。 0/-0和NaN会自动转为false,其余数字都被认为是true
b.当字符串在逻辑环境中执行时,也会被转为布尔类型。空字符串会被转为false,其它字符串都会转为true
c.undefined和null在逻辑环境中执行时,都被认为是false
d.对象在逻辑环境中执行时,只要当前引用的对象不为空,都会被认为是true
e.使用包装类实例的时候,引擎只会判断其引用是否存在,不会判断内部的值(对于Boolean类,有一个特别需要注意的是,当传入一个字符串时,它不会去解析字符串内部的值,而是做个简单地判断,只要不是空字符串,都会被认为是true)
具体可见文章:https://www.cnblogs.com/liuhe688/p/5918589.html


2.c的值是什么?
    var a = function(){
	this.b = 1;
    }
    var b = function(){
	var b = new a().b;
	return 5 + b;
    }
    var c = b();

    A.5
    B.null
    C.代码运行时会报错
    D.6
    E.undefined

答案:D.6

解析:这题我还没怎么弄懂,再去看看预编译 全局 this部分的知识点以后再来答好了,有大神解析的话就更好了


3.怎样读取一个字符串的第一个字符?
A.data.charAt(1);
B.data.charAt(0);
C.data.slice(1);
D.data.substr(0);
E.data.substring(1);

答案:B.data.charAt(0);

解析:charAt() :返回指定位置的字符;

         语法:stringObject.charAt(index)

         注意:字符串中第一个字符的下标是0.如果参数index不在0与string.length之间,该方法将返回一个空字符串。

         slice() :提取字符串的某个部分,并且以新的字符串返回被提取的部分;

         语法:stringObject.slice(start, end)

         注意: slice(start从该位开始截取, end截取到该位不包括该位) ,start和end可以为负,在数组中同样适用  

         substr() :在字符串中提取从start下标开始的指定数目的字符;

         语法:stringObject.substr(start, length)

         注意: substr不建议使用(ECMAscript中未标准化),参数start中包括start指的该字符,当length不填时,默认截取到字符串的结尾;

         subString() :提取字符串中指定下标间的字符

         语法:stringObject.subString(start, end)

         注意: subString(start从该位开始截取, end截取到该位不包括该位) ,start和end不可以为负,长度为end-start,当end 不填时,默认截取到字符串的结尾;

         总结:slice()和subString()都是通过下标来截取字符串,但slice参数可以为负数,substr()是通过长度来截取字符串。

            

4.x的值是什么?
  var x = "1" + 2 + 3;
A.语句会报错
B.123
C.15
D.6

答案:B.123

解析:JavaScript中 +运算符 用于把文本值或者字符串变量连接起来


5.下面哪个String原型方法的入参是正则表达式?
A.charCodeAt()
B.search()
C.indexOf()
D.All of these

答案:B.search()

解析:charCodeAt()  charAt() 类似,不过charCodeAt()是返回指定位置的字符的Unicode编码

         search() :用于检索字符串中指定的子字符串,或者正则表达式,返回第一个匹配到的子串的起始位置

         语法:stringObject.search(regexp)

         indexOf() :返回某个指定的字符串值在字符串中首次出现的位置

         语法:stringObject.indexOf(searchvalue, fromindex)

         注意:该方法对大小写敏感;从头到尾开始检索,若没有检索到,则返回-1;


6.x的值是什么?
var str = "What is this";
var x = str.search("is");
A.4		B.7		C.6		D.5		E.1

答案:D.5

解析:见第五题解析


7.下面哪一个函数声明是正确的?
A.function myFunc(arg1,arg2) 
B.function myFunc(arg1,arg2) {}
C.func myFunc(arg1 as string, arg2 as int) {}

答案:B.function myFunc(arg1,arg2) {}

解析:JavaScript是弱类型语言,变量定义中不需要使用到string int等等;


8.____操作符返回一个字符串,标识它所操作对象的类型
A.Type 		B.typeof 	C.TypeOf 	D.getType 	E.typename

答案:B.typeof

解析:typeof操作符返回一个字符串,表示未经计算的操作数的类型,其余选项不存在


9.操作符“&”是:
A.赋值操作符		B.位移操作符		C.位于操作符		D.条件操作符

答案:C.位于操作符

解析:&表示and,是一个位操作符,类似的还有 |;


10.有a,b两个数组,下面哪个选项可以把a,b合成一个新数组
var a = ["a", "b", "c"];
var b = ["d", "e", "f"];
A.全不正确
B.var c = a.push() + b.push(); 
C.var c = a.concat(b); 
D.var c = a.join(b); 

答案:C.var c = a.concat(b);

解析:push():在数组最后一位添加数据,可以直接添加多位,改变原数组,返回新的长度;

         所以答案B中c=6;

         concat():连接两个或两个以上数组,不改变原数组,返回一个新的数组,参数可以是值也可以是数组;

         join():不改变原数组,把数组中的所有元素放入一个字符串,由传入的参数进行分割,若忽略该参数,那么用","进行分割

         所以答案D中c="ad,e,fbd,e,fc"      

  

11.关于下面的代码,哪个选项说明是正确的?
function test(){
    var foo = bar = 5;
}
test();
A.报SyntaxError
B.foo和bar都是全局变量
C.foo和bar是局部变量
D.foo是局部变量,bar是全局变量

答案:D.foo是局部变量,bar是全局变量

解析:和预编译有关,到时候新写一篇


12.执行下面的语句后,x等于什么?
var x = 1 == '1';
A.1		B.undefined		C.false 	 D.1(字符)    	  E.true

答案:E.true

解析:和数据类型转换有关,过两天整理完了以后专门写一篇。


1.URL的中文名称是“统一资源定位符”
A.对		B.错

答案:A.对

解析:Uniform Resource Locator


2.定义表元的HTML是
A.
B.
C.

答案:C.

解析:表元的意思即为表格的单元,所以为

         

:表格的行

         

:每行中的若干单元格

         

:表格的表头,大多数浏览器会把它设置为粗体居中的文本


3.下面关于新样式对话框的说法错误的是:
A.在样式表中自定义的元素样式不可以在整个HTML中被调用
B.可以选择Use CSS Selector(CSS给定的选择用样式)
C.可以选择Redefine HTML Tag(HTML标签选择器)
D.可以选择Make Custom Style(自定义样式)

答案:A.在样式表中自定义的元素样式不可以在整个HTML中被调用

解析:Dreamweaver中的操作,不太懂


4.第四题漏截图找不到了

5.若要是设计网页的背景图像为bg_360ds.jpg,以下标记中正确的是
A.
B.
C.

答案:B.


6.不属于按钮对象的属性的是
A.status表示该对象的status属性
B.value表示该对象的value属性
C.form表示该对象的form属性
D.type表示该对象的type属性
E.name表示该对象的name属性

答案:A.status表示该对象的status属性

解析: