今日刷题(2022-4-26)-注意数组的一些方法

76 篇文章 2 订阅
26 篇文章 2 订阅

题目1

在下列Promise所提供的方法中,用来向成功或者失败的回调函数队列中添加回调函数的是( )
A: done
B: fail
C: always 
D: then 
  • 答案

    • D
  • 解析

    • A没有,B也不存在,C为一个扩展(不管有没有成功失败都会调用),D的回调有二个参数,第一个是成功回调,第二个是失败回调

          <script>
              const promise1 = new Promise((resolve, reject) => {
                  resolve("事情解决");
              });
              //promise对象.then(成功回调,失败回调);
              promise1.then((value) => {
                  console.log("我是成功回调", value);
              }, (reason) => {
                  console.log("我是失败回调", value);
              })
          </script>
      
    • 至于C选项,是一个扩展,可以安装npm ``install es6-promise-always --save

      //always(data, error) data: resolve的数据。 error: reject的数据。
      require("es6-promise-always")
      
      axios.get("/").then(()=>{
      
       //处理逻辑
      
      }).always(()=>{
      
       console.log("请求结束")
      
       hideLoading();
      
      })
      
      //Promise杂烩示例
      axios("www.baidu.com").then(function(data) {
          if(50>10) {
            return data.json();
          }
          throw new TypeError("出错了!");
        })
        .then(function(data) { console.log("我要处理返回的数据") })
        .catch(function(error) { console.log("失败原因",error); })
        .finally(function() { console.log("不管怎么样我都要执行") });
      

题目2

以下符合 ES6 写法的有
A:  class Foo
    {
        constructor() {return Object.create(null);}
    }
    Foo()
B: var m=1;
   export m;
C: export var firstName=’Michael’;
D:A模块中export{readFile}后,在B模块中import readFile from ‘A’可以获取到readFile
  • 答案

    • C
  • 解析

    • A: Fun() 把 class 当成方法来用? var fun = new Func() 这样用就对了

    • B :暴露方式不对

      1. 分别暴露 export let length="100";export function add(){console.log("干饭")}
      	引入: export {length,add} from "./module.js";
      2. 统一暴露 export {暴露的数据键值对} 比如:var a = 10; export { a };
      	引入: export {length,add} from "./module.js";
      3. 默认暴露 export default 暴露的数据,比如export default var a = 10;
      	引入:import a from "./module.js";
      
    • C: 正确的,分别暴露

    • D: 缺少了 { } 符号,正确应该为import {readFile} from ‘A’

export文档 import文档

题目3

以下代码执行后,array 的结果是?
let array = [,1,,2,,3];
array = array.map((i) => ++i)
A: [,2,,3,,4]
B: [NaN,2,NaN,3,NaN,4]
C: [1,2,1,3,1,4]
D: [null,2,null,3,null,4]
  • 答案
    • A
  • 解析
    • orEach(), filter(), reduce(), every() 和some()都会跳过空位。
    • map()会跳过空位,但会保留这个值。
    • join()和toString()会将空位视为undefined,而undefined和null会被处理成空字符串。
    • ES6 中都会将空位当做undefined

题目4

以下哪些方法会返回一个数组?(多选)
A: Object.keys()
B: String.prototype.split()
C: Array.prototype.join()
D: Promise.all()
  • 答案

    • A,B
  • 解析

    • A: Object.keys()返回对象的key值所组成的数组(key要为可枚举)
    • B: String.prototype.split()分割字符串,返回分割后的数组
    • C: Array.prototype.join()方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。
    • D: Promise.all(iterable) 方法返回一个 Promise 实例,此实例在 iterable 参数内所有的 promise 都“完成(resolved)”或参数中不包含 promise 时回调完成(resolve);
      如果参数中 promise 有一个失败(rejected),此实例回调失败(reject),失败原因的是第一个失败 promise 的结果。
        <script>
            var obj = {
                name:"李白",
                age:1000,
            };
            Object.defineProperty(obj,"sex",{
                value:"男",
                enumerable:false
            });
            console.log(obj);//{name: '李白', age: 1000, sex: '男'}
            console.log(Object.keys(obj));//['name', 'age']
        </script>
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未成年梦想

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值