JS核心概念:Context, Scope, Function, Prototype,Object

今天回顾了JS的的一些核心概念。

Scope:让你直接说Scope是什么你能说出来吗?反正我是不能。这玩意儿实在太难用一句话来说明了。

Scope chain: Scope Chain是为了保证对执行环境有权访问的数变量和函数的有序访问。作用域链的前端是当前执行环境的Variable Object.作用域链的根是全局作用域对应的Variable Object.

Execution Context:这玩意儿应该是JS中最重要的概念了。执行环境定义了变量或函数有权访问的其他数据,决定了他们各自的行为。每个执行环境都有一个与之关联的Variable Object,虽然编写代码时无法访问这个对象,但解析器在处理数据时会在后台使用它。Execution C

Activation Object:当函数被调用时,一个Activation Object就创建了。它其实也是个Variable Object,也包含了变量以及FD类型的函数,但是它比普通的Variable Object多了形参以及arguments.arguments其实也是形参得来的,只不过对形参加了有序索引。


Prototype:什么是原型?每个对象内部都有一个__proto__来引用原型对象。这一句话也难说清楚。但是我们可以从对象说起。一个对象是由属性集合以及唯一的原型对象构成。这个原型对象可以是普通的对象,也可以是NULL。


Prototype Chain:这是个有限对象链条,是为了实现继承和共享属性的。当C的Prototype指向B,B的Prototype指向A,ETC.这样就构成了一个原型链条。知道Object.


this: THIS也是一个对象咯,只是它是和执行环境有关的一个对象。所以它也可以叫做Context Object.它是Exeuction Context的一个属性。而不是Variable Object的一个属性。


HTML的一些回顾:

HTML的块元素:Div, P, H1-H6, UL, OL, LI,TABLE,dl,dt,dd

HTML的inline元素:span,label, strong, em, a, sub, sup,i,form, fieldset

HTML缺省Inline-block元素:img,input, button,select

HTML不管是BLOCK还是INLINE,可以继承的属性?答:cursor,visibility

Block元素可以继承的属性:text-align, text-indent

Inline元素可以继承的属性:font-size, font-weight, font-family, color, font, font-style, line-height, word-spacing,letter-spacing,text-decoration, text-transform,etc

列表元素可以继承:list-style-position,list-style-type,list-style-image

表格元素可继承:border-collapse


注意:内联元素的width和height是不生效的

   text-indent是首行缩进。


今天H5的一些小发现:

H5是干什么的?H5是为了在不用插件的情况下把想展现的东西都给你展现出来。比如audio, video, canvas, svg等标签。

H5中的text-shadow:hv, vv, 模糊度,颜色等。也是H5的一个亮点了。

H5新增的10个标签元素:当然主要是INPUT了:date, time, datetime, datalist(相当于autocomple),email,telephone,number, range, url, search等。还是蛮强大的。

H5的Column Layout在IE这破玩意儿下是不被支持的。

多列布局,常见的就是fixed+liquid,或者纯粹用float布局。


下面是CSS OVERLAY的小总结:

也是携程的面试题,我日,本来在公司做过ColorBox的,居然没想起来遮罩层该怎么做。

就是在手机端全屏幕的情况下,在离底部30%的地方做一个小遮罩层,但可以透过这个小块儿看到后面一个被遮罩的大背景,有几种方案了:

1.overlay层全铺满,半透明;modal层再设个半透明,就行了。前提是body要设成relative,同时overlay和modal层用absolute布局。

2.overlay层全铺满,半透明;modal层用fixed布局。这样body就不用设成relative了。

3.用伪类after,在BODY后面加个outline或者shadow-box作为overlay,然后HTML页面上再写个modal就可以了。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值