web学习日记1

web学习日记1

1.js在使用函数时加不加括号的区别

在慕课网的技术分享(原文链接;http://www.imooc.com/wenda/detail/237566)中遇到这个问题,之前有疑惑,趁着这个机会解开。

题目代码:

 1 var fullname = ‘John Doe‘;
 2 var obj = {
 3   fullname: ‘Colin Ihrig‘,
 4   prop: {
 5   fullname: ‘Aurelio De Rosa‘,
 6   getFullname: function() {
 7     return this.fullname;
 8   }
 9  }
10 };
11   console.log(obj.prop.getFullname());
12   var test = obj.prop.getFullname;
13   console.log(test());

第一次看这个题时,有点懵,我能知道这个题目的用意可能就是我一直疑惑的地方。

第 一遍分析下来,结果是:Aurelio De Rosa和Aurelio De Rosa。感觉不对劲,看了答案,第二个输出是John Doe。不懂,这是obj对象的方法,第一个输出无疑是Aurelio De Rosa,关键是第二个。反映到代码中就是这一句的问题:

var test = obj.prop.getFullname;

我注意到这里方法getFullnam是没有括号的,问题应该就在这里。开始上网找答案。看过几个之后,简单说下我的理解。

不加括号的是函数的引用,相当于把getFullname这个函数的引用赋给test。而加了括号的函数就是函数的执行,返回这函数的结果。

这个题目还有一个特别之处就是getFullname这个方法内部有this,第一次调用的时候,this指的是obj对象。而赋给test之后,this就是全局了。所以在调用test()的时候,自然输出是全局的fullname,也就是John Doe。

我 的理解就是,比如说这个方法是在美国的一个措施,很有效,中国看见这个很好,照搬一套过来,但是这措施里有一条写着“首部人民要do something"。原本在美国,这自然是Washington D.C.人民的事,但是到了中国,这就是北京人民的事了。哈哈,这么想来还挺好理解的。。

2.font-size的三个单位

px:像素,用于计算机等屏幕输出。

em:通过比例形式,实现缩放。

pt:用于打印机的输出,作用有限。

一般情况下,px和em搭配使用较好。

3.html标签<hr />、&nbsp;

html输出空格&nbsp;(分号不能丢)

<hr />:空标签,在页面上画下一条水平线。

第一天,over。

时间: 2024-07-30 17:03:39

web学习日记1的相关文章

【Web学习日记】——在IIS上发布一个WebService

没有开发过程,只是发布过程 一.前提 开发使用的是VS2013 从来没有做过Web的发布,在网上找例子,看到的总是与自己的情况不相符,而且也有人提出了VS2013发布网站的问题,但解决方案却很少,好不容易找到一个,一定要记下来,方便以后查阅. 要把一个WebService发布到IIS,首先要安装IIS,网络上有很多安装IIS的教程,不再重复:第二步就是使用VS发布WebService:第三步就是在IIS上创建网站. 二.用VS2013发布WebService 用VS2013开发完成之后,在Web

web学习日记9

终于结束了oracle考试,能缓两天.赶快拿起书,上网再学习. Math对象 属性:E.LN2.LN10.LOG2E.LOG10E.PI.SORT_2.SORT2 方法:向上取整ceil(); 向下取整floor();四舍五入round();随机数random(); Array对象 数组连接:concat(array1…arrayN);返回一个新数组,不改变原数组: 指定分隔符连接数组元素:join(分隔符);返回一个字符串,以分隔符连接: 选定元素:slice(start,end);start

web学习日记8

Date对象 1.创建: 1 //方式一:使得oDate成为日期对象,以当前时间默认初始化 2 var oDate = new Date(); 3 4 //方式二 5 var pDate = new Date(2000,1,1);//2000年1月1日 6 var qDate = new Date(Oct 1,2012);//2012年10月1日 注:最好使用Date对象的方法来初始化对象 2.常用方法: get/setFullYear();//返回/设置年份,四位数字:get/setTime(

web学习日记2

今天茶花有事,发的有点晚. 一.HTML部分 1.div标签 div相当于一个容器,包裹着属于同一逻辑的部分,如一个列表等.用id给div命名,以此作为唯一的标识. 2.table标签 <tr>:行,<td>:单元,<th>:表头: <thead>.<tbody>.<tfooter>:若以此来包裹,作用是:待完全加载后才显示. <caption>表格的标题. summary:table标签的属性,不显示. 边框(css):

web学习日记7

DOM: 1.DOM中的事件对象 (1)type,获取世界类型: (2)target,获取事件目标: (3)stopPropagation()方法,阻止事件冒泡: (4)preventDefault()方法,阻止事件的默认行为. 2.IE中的事件对象   event = event || window.event; (1)type属性,同DOM: (2)srcElement,获取事件的目标: (3)cancelBubble属性,boolean,用于阻止事件冒泡: (4)returnValue属性

web学习日记4

DOM: 1.事件冒泡:事件最开始由最具体的元素接收然后逐级向上传播至最不具体的那个点.   事件捕获:不太具体的节点应更早地接收到事件,最具体的事件最晚接收到事件. IE:事件冒泡流      Firefox:事件捕获流 2.事件处理程序: HTML事件处理程序:直接加在标签里.缺点:HTML与JS代码紧紧地结合在一起. DOM0级事件处理程序:把一个函数赋值给一个事件处理程序属性.优点:简单跨浏览器. DOM2级事件处理程序:两个函数:addEventListener(事件类型,事件处理函数

web学习日记5

网络: TCP/IP 四层协议模型 应用层        Telnet.FTP.e-mail 运输层 TCP和UDP 网络层 IP.ICMP.IGMP 链路层 设备驱动程序与接口卡 CSS: 1.常见的块状元素:<div>  <p>  <h1>~<h6>  <ol>  <ul>  <dl>  <table>  <address> <blockquote>  <form> 常见

web学习日记3

HTML-表单(form) 1.格式:<form method="传送方式" action="服务器文件">,其中传送方式为post或get,二者区别在于:http://www.imooc.com/wiki/view?pid=142 2.文本输入框 <input type="text" name="名称" value="文本" /> 3.大段文字 <textarea rows=

web学习日记6

CSS: 1.盒子模型:content内容,padding补白,border边框,margin边界. 2.布局模型: a.流动模型(Flow),默认的布局模型.特征:1>块状元素自上而下,宽度100%.2>内联元素从左至右依次排列. b.浮动模型(Float):块状元素可以同行并列. c.层布局(Layer): c1.绝对定位:absolute c2.相对定位:relative  偏移前的位置保留不动 c3.固定定位:fixed 典型布局:以前辈元素做容器,设置为relative,目标元素设为