zoukankan      html  css  js  c++  java
  • H5C3-JS day02

    1:

    如果页面中包含框架,那么每个框架都拥有自己的window对象.

    考察的是JavaScript中浏览器的Window对象。
    Window 对象表示浏览器中打开的窗口,通过Window对象的属性,比如closed属性检索窗口是否已被关闭。所以A正确。
    window对象的属性包含内容:所以B正确。
    如果文档包含框架(<frame> 或 <iframe> 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。所以C不正确,D正确。
     
    2:
    html5中没有getContent()和getCanvas方法
    调用canvas对象的getContext()方法来获取绘图环境
    3;
    A:<a> 标签是行内元素,不可以嵌套块级元素 <p>
    B: <button> 是行内块元素,可以嵌套行内元素。但是,不推荐嵌套 <a> 元素!!!
       在比较多的 UI 库中,都是 <a> 元素嵌套 <button> 元素的。(自己试一下就知道区别了)
    D:<dl>、<dt>、<dd> 、<h>这些 标题标签 不推荐嵌套块级元素
    4:
    不可继承的:display、margin、border、padding、background、height、min-height、max- height、width、min-width、max-width、overflow、position、left、right、top、 bottom、z-index、float、clear、table-layout、vertical-align、page-break-after、 page-bread-before和unicode-bidi。

    所有元素可继承:visibility和cursor。

    内联元素可继承:letter-spacing、word-spacing、white-space、line-height、color、font、 font-family、font-size、font-style、font-variant、font-weight、text- decoration、text-transform、direction。

    块状元素可继承:text-indent和text-align。

    列表元素可继承:list-style、list-style-type、list-style-position、list-style-image。

    表格元素可继承:border-collapse。
     
    ps:这谁记得住,考这个的大厂的出题人就是脑瘫!!!
     
    5:
    背景定位属性background-position 
    若只有一个取值,则其第二个取值默认为50%
    6;
    键与值都需要用引号括起来  “键”
    键值之间用冒号   “键”:“值”
    键值对之间用逗号隔开     “键”:“值”  , “键”:“值”
     
    7:

     8:

    只要 协议 、 域名 、 端口 有任何一个 不同, 都被当作是 不同 的域。

    9:

    Ajax技术核心就是XMLHttpRequest对象。
    Ajax技术的工作原理:可以分成3步
    1.创建Ajax对象:var xhr = new XMLHttpRequest();
    2.xhr 发送请求:xhr.open('get','test.html','true');
                              xhr.send();
    3.xhr获取响应:
                              xhr.onreadystatechange = function(){
                                       if(xhr.readystate == 4){//请求的状态码
                                                           /*
                                                                       0:请求还没有建立(open执行前)
                                                                       1:请求建立了还没发送(执行了open)
                                                                        2:请求正式发送(执行了send)
                                                                       3:请求已受理,有部分数据可以用,但还没有处理完成
                                                                     4:请求完全处理完成
                                                               */
                                             alert(xhr.responseText);//返回的数据
                                         }
                                 }
    可以看到,send()前是open()
     
    10:

     11:

    javascript中实现跨域的方式总结

    • 第一种方式:jsonp请求;jsonp的原理是利用<script>标签的跨域特性,可以不受限制地从其他域中加载资源,类似的标签还有<img>.
    • 第二种方式:document.domain;这种方式用在主域名相同子域名不同的跨域访问中
    • 第三种方式:window.name;window的name属性有个特征:在一个窗口(window)的生命周期内,窗口载入的所有的页面都是共享一个window.name的,每个页面对window.name都有读写的权限,window.name是持久存在一个窗口载入过的所有页面中的,并不会因新页面的载入而进行重置。
    • 第四种方式:window.postMessage;window.postMessages是html5中实现跨域访问的一种新方式,可以使用它来向其它的window对象发送消息,无论这个window对象是属于同源或不同源。
    • 第五种方式:CORS;CORS背后的基本思想,就是使用自定义的HTTP头部让浏览器与服务器进行沟通,从而决定请求或响应是应该成功还是应该失败。
    • 第六种方式:Web Sockets;web sockets原理:在JS创建了web socket之后,会有一个HTTP请求发送到浏览器以发起连接。取得服务器响应后,建立的连接会使用HTTP升级从HTTP协议交换为web sockt协议。

    12:

    with try-catch eval可以改变作用域链,红皮书有这个知识点

     
    13:

     14;

    +的处理机制是:新建一个临时字符串,将新字符串赋值为a+b,然后返回这个临新字符串并同时销毁原始字符串,所以字符串连接效率较低。所以用Array.join()不会新建临时字符串效率更高。

    15:

    • JS 中值的类型分为原始值类型和对象类型。原始值类型包括 number, string, boolean, null 和 undefined;对象类型即 object。首先原始值类型它就不是对象。
    • 另外,要注意 'hello' 和 new String('hello') 的区别,前者是字符串字面值,属于原始类型,而后者是对象。用 typeof 运算符返回的值也是完全不一样的:
    1
    2
    typeof 'hello';  // 'string'
    typeof new String('hello');  // 'object'
    • 之所以很多人分不清字符串字面值和 String 对象,归根结底就是 JS 的语法对你们太过纵容了。当执行 'hello'.length 时,发现可以意料之中的返回 5,你们就觉得 'hello' 就是 String 对象,不然它怎么会有 String 对象的属性。其实,这是由于 JS 在执行到这条语句的时候,内部将 'hello' 包装成了一个 String 对象,执行完后,再把这个对象丢弃了,这种语法叫做 “装箱”,在其他面向对象语言里也有(如 C#)。不要认为 JS 帮你装箱了,你就可以在写代码的时候不分箱里箱外了!

    16:

    JS中String与string的区别

    String是构造函数,而"string"是变量的一种类型

    typeof String     // "function"
    typeof string     // "undefined"
    typeof "string"   // "string"


    String('xxx')  返回的是一个字符串。

  • 相关阅读:
    转:10+年程序员总结的20+条经验教训
    年损失超20亿,手游行业第三方安全服务需求迫切
    分享:Android 应用有哪些常见,浅谈常被利用的安全漏洞?
    Android手机开发(一)
    分享:不懂技术,不要对懂技术的人说这很容易实现
    spring-boot学习六:外部配置加载顺序
    spring-boot学习五:Spring boot配置文件的加载位置
    spring-boot学习一:使用Spring Initializr快速创建Spring boot项目
    数值比较有说头
    常见SQL积累
  • 原文地址:https://www.cnblogs.com/zhangjiabing/p/13217423.html
Copyright © 2011-2022 走看看