zoukankan      html  css  js  c++  java
  • 8.26做JS的题目

    1.下列正确定义函数的是

    A function foo() {}

    B Function foo() {}

    C var foo = new Function foo() {}

    D var foo = new function foo() {}

    A:function foo() {}是普通的函数声明
    B:Function应是小写
    CD:是使用了Function构造函数,正确写法:var foo = new Function();
    2.下面哪一个是JSON数据?
    A{name:"xiaoming",age,"student"}
    B{"name":"xiaoming","age":"student"}
    C{"xiaoming","student"}
    D  ["xiaoming","student"]

    有效的数据类型

    在 JSON 中,值必须是以下数据类型之一:

    字符串 数字  对象(JSON 对象) 数组 布尔  Null

    JSON 的值不可以是以下数据类型之一:

    函数 日期 undefined

    JSON 字符串 JSON 中的字符串必须用双引号包围。{ "name":"John" }

    JSON 数字 JSON 中的数字必须是整数或浮点数。{ "age":30 }

     JSON 中的值可以是对象。{"employee":{ "name":"Bill Gates", "age":62, "city":"Seattle" }}

    JSON 中的值可以是数组。{"employees":[ "Bill", "Steve", "David" ]}

    JSON 中的值可以是 true/false。{ "sale":true }

    JSON 中的值可以是 null。{ "middlename":null }

    3.JavaScript定义var a="40",var b=7,则执行a%b会得到()。  5

    4.你想通过 XMLHttpRequest更新以下元素,即通过div显示状态,哪个是正确的做法?

     <div id="statusCode"></div>
    A.var myDiv = document.getElementById ("statusCode"); myDiv.innerHTML = req.statusCode;
    B.var myDiv = document.getElementById ("statusCode"); myDiv.innerHTML = req.status;
    C.var myDiv = document.getElementById ("statusCode"); myDiv.setStatus (req.statusCode);
    D.var myDiv = document.getElementById ("statusCode"); myDiv.status = req.status;
    这个题的意思应该是把XHR的状态返回在这个div显示出来吧。显示就用innerHTML。req.status返回状态码。所以选B
    5.从字符串 const str = 'qwbewrbbeqqbbbweebbbbqee';中能得到结果 ["b", "bb", "bbb", "bbbb"] 以下错误语句是?
    A.str.match(/b+/g)
    B.str.match(/b*/g)
    C.str.match(/b{1,4}/g)
    D.str.match(/b{1,5}/g)

    /b+/g //匹配前面的子表达式一次或多次,有一个或多个b

    /b*/g //匹配前面的子表达式零次或多次,结果不止数组中那么多

    /b{1,4}/g //匹配1-4个b

    /b{1,5}/g //匹配1-5个b

    +表示出现至少一次b
    *表示可以不出现b,也可以出现一次或多次
    {n,m}表示最少出现n次b,最多出现m次b
    6.以下代码执行后,result 的值是:
    var result = Math.round(11.5) + Math.round(-11.5);
    1
    Math.round(x)是四舍五入是朝着大的数字入不是远离0
    7.
    有如下代码:
    var name="World!";

    (function(){

    var name;

    if(typeof name=== 'undefined'){

    name='Jack';

    console.log('Goodbye'+name);

    }

    else

    {

    console.log('hello'+name);

    }

    }

    )();

    请问执行后弹出的值是:()Goodbye Jack
    因为在判断if的时候函数内部的name是个空值所以类型就是underfined所以就直接输出Goodbye Jack
    8.以下代码执行时不会在控制台输出错误信息的是:
    Alet a = decodeURIComponent('%');
    B.var a;
    a();
    function a() {
    console.log(a);
    }
    C.Promise.reject(123).finally(a => {
    console.log(a);
    });
    D.var a = 1;
    let a = 2;
    console.log(a);
    B选项:主要考察的是函数的提升和变量的提升,牢记一点:函数提升后的位置在变量提升后的位置之后,也就是相当于先声明一个var a,然后function a()函数提升了,将其覆盖,所以B选项无论在哪个位置打印a,输出的都是a这个函数
    A选项:decodeURIComponent()里面的参数:必需。一个字符串,含有编码 URI 组件或其他要解码的文本。我没用过,可以直接参考w3c:https://www.w3school.com.cn/jsref/jsref_decodeURIComponent.asp
    D选项:可以直接看看let 和 var的区别  两个都是var的话下面会直接覆盖上面的,let的话重复定义会报错。

    9.下面哪个不是RegExp对象的方法?()

     JavaScript RegExp 对象有 3 个方法:test()、exec() 和 compile()。
    (1) test() 方法用来检测一个字符串是否匹配某个正则表达式,如果匹配成功,返回 true ,否则返回 false;
    (2) exec() 方法用来检索字符串中与正则表达式匹配的值。exec() 方法返回一个数组,其中存放匹配的结果。如果未找到匹配的值,则返回 null;
    (3)compile() 方法可以在脚本执行过程中编译正则表达式,也可以改变已有表达式。

    10.
    this对象的理解正确的是 ()

    1.在事件中,this指向触发这个事件的对象(特殊的是:IE中的attachEvent中的this总是指向全局对象window)。
    2.this总是指向函数的直接调用者(而非间接调用者)
    3.new后面就是构造函数,构造函数中的this指向的就是当前的对象
  • 相关阅读:
    linux之vi编辑器的基础命令
    redis的安装部署启动停止<17.3.21已更新>
    关于Ubuntu的ssh免密登录
    Git(管理修改)
    Git(时光机-版本回退)
    Git(查看修改记录)
    Git(创建版本库)
    集中式VS分布式
    Git(介绍和安装)
    Javascript基础知识
  • 原文地址:https://www.cnblogs.com/smhyu/p/13566437.html
Copyright © 2011-2022 走看看