js 图片缩放不超出父级元素范围_错题集-变量提升,js数据类型

  1. span标签的width和height分别为多少?
<

问题:span标签的width和height分别为多少?

1.首先span元素是行内元素,是无法设置高宽度的,span中使用了float使得其变成了块级元素,因此设置的高宽有效。

2.i中的绝对定位会使其脱离文档流,因而不占用正常的文档流,再者span中的width设置为auto,且没有其他元素,所以为零。这种也叫‘塌陷现象’,即在使用float和定位(absolute、fixed)的情况下脱离文档流会导致。

给 span 添加 float:left 会触发浏览器 BFC,由于其内部的 i 标签使用绝对定位脱离了文档流,因此造成 span 元素内容塌陷,所以 span 的宽度塌陷为 0,由于给 span 元素手动指定了高度为 100%,因此其高度和父级元素高度相同(200px),因此最终的结果为:宽度0px,高度200px

1.span是行内元素,是不支持宽和高的浮动后,具有宽高宽为auto,即由span中的内容撑开;而高为100%,就是继承了其父元素的高度;

2.span的子元素i也脱离了文档流,i是绝对定位

3.所以,span的宽为0,高度为200px

2.处理a.html文件时,以下哪行伪代码可能导致内存越界或者抛出异常()

         int totalBlank = 0;
         int blankNum = 0;
         int taglen = page.taglst.size();
A       for(int i = 1; i < taglen-1; ++i)
        {
                 //check blank
B             while(page.taglst[i] == "<br>" && i < taglen)       把&&左边和右边位置调换一下
               {
C                       ++totalBlank;
D                       ++i;
               }
E             if(totalBlank > 10)
F                      blankNum += totalBlank;
G             totalBlank = 0;
        }

3.<svg> 标签的目的是什么?用可伸缩矢量图来画图或文本

SVG 即 Scalable Vector Graphics,是一种用来绘制 矢量图 的 HTML5 标签。你只需定义好XML属性,就能获得一致的图像元素。

4.请问a.length的值是多少( )

var a =[];

a[0]=1, a[1]=2, a[2]=3, a[5]=4;

ECMAScript数组的大小是可以动态调整的,既可以随着数据的添加自动增长以容纳新增数据。当把一个值放在超出当前数组大小的位置上时,数组就会重新计算长度值,即长度值等于最后一项的索引加一,前面的值都自动被赋值为了undefined了

a[0]:1

a[1]:2

a[2]:3

a[3]:undefined

a[4]:undefined

a[5]:4

5.JavaScript 写在 HTML 代码中的哪一部分,会导致页面在加载的时候自身被执行()

在HTML body部分中的JavaScripts会在页面加载的时候被执行。 在HTML head部分中的JavaScripts会在被调用的时候才执行

(放在<head>部分会先加载完js再加载页面,放在<body>部分会在加载页面时候加载)

6.javascript基本数据类型

js所有数据类型有:String,Object , Null,Undefined,Boolean,Number,Symbol(ES6新增)

五种基本数据类型为:Undefined,Null,Boolean,Number和String 。 一个复杂数据类型:Object,Array,Function,RegExp,Date,Error

全局数据类型:Math

typeof六种返回格式: string,number, object,function,undefined,symbol

7.只能输入零和非零开头的数字,正确的正则表达式是()

^(0|[1-9][0-9]*)$

^ 以。。。开头,$以。。。结尾。

*任意多次

|或的意思

()组

[]集合

8.ng-class是做什么用的?ng-class是AngularJS预设的一个指令,用于动态自定义dom元素的css class name

给元素绑定样式 ng-style

给元素绑定类名 ng-class

eg:用法①:<div ng-class="{'A':isA,'B':isB,'C':isC}"></div>

用法②:<div ng-class = "{{A}}" > </ div >

给元素绑定监听 ng-click等

显示隐藏 ng-show ng-hide

9.JavaScript中document.getElementById的返回值的类型为?Object

获取dom节点对象的方式 document.getElementById,document.getElementByTagname,document.getElementByClassname,要说返回的是Object也没问题,只是还会有类数组对象,常遇到的有jQuery对象,Variable object,

10.下列事件哪个不是由鼠标触发的事件

contextmenu 是当浏览者按下鼠标右键出现菜单时或者通过键盘的按键触发页面菜单时触发的事件 [ 试试在页面中的 <body> 中加入 onContentMenu="return false" 就可禁止使用鼠标右键了

常见的事件:

1. 点击事件:

1. onclick:单击事件

2. ondblclick:双击事件

2. 焦点事件

1. onblur:失去焦点

2. onfocus:元素获得焦点。

3. 加载事件:

1. onload:一张页面或一幅图像完成加载。

4. 鼠标事件:

1. onmousedown 鼠标按钮被按下。

2. onmouseup 鼠标按键被松开。

3. onmousemove 鼠标被移动。

4. onmouseover 鼠标移到某元素之上

5. onmouseout 鼠标从某元素移开。

5. 键盘事件:

1. onkeydown 某个键盘按键被按下。

2. onkeyup 某个键盘按键被松开

3. onkeypress 某个键盘按键被按下并松开

6. 选择和改变

1. onchange 域的内容被改变。

2. onselect 文本被选中。

7. 表单事件:

1. onsubmit 确认按钮被点击。

2. onreset 重置按钮被点击。

11.

(

90db17bf4bef89119de54530ce58180a.png
变量提升

36f2236f36ea91d241bed55fcaf408e1.png
var 

foo变量“被提前”了,但是他的赋值(也就是函数)并没有被提前,从这一点上来说,和前面我们所讲的变量“被提前”是完全一致的,并且,由于“被提前”的变量的默认值是 undefined。

函数声明可以被提前,但函数表达式不能被提前

12.在jquery中想要实现通过远程http get请求载入信息功能的是下面的哪一下事件

$.get(url)

A.ajax() 方法通过 HTTP 请求加载远程数据。$.ajax(opts);opts为JSON格式,常见参数url、type、data等。

B.load() 方法从服务器加载数据,并把返回的数据放入被选元素中。$(selector).load(URL,data,callback);

必需的 URL 参数规定您希望加载的 URL。

可选的 data 参数规定与请求一同发送的查询字符串键/值对集合

可选的 callback 参数是 load() 方法完成后所执行的函数名称

C.$.get() 方法通过 HTTP GET 请求从服务器上请求数据

$.get(URL,callback);

必需的 URL 参数规定您希望请求的 URL。

可选的 callback 参数是请求成功后所执行的函数名

D.getScript() 方法通过 HTTP GET 请求载入并执行 JavaScript 文件

jQuery.getScript(url,success(response,status));

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值