首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

美团前端手写面试题总结

因为 Promise 的状态只能改变一次, 那么我们只需要把 Promise.race 中产生的 Promise 对象的 resolve 方法, 注入到数组中的每一个 Promise 实例中的回调函数中即可...prototype 属性是否出现在对象的原型链中的任何位置。...:表单验证需要服务端配合,只执行一段连续的输入事件的最后一次,还有搜索联想词功能类似生存环境请用lodash.debounceArray.prototype.map()Array.prototype.map...";"的(比如username的结尾),也可能是没有的(比如user-roles的结尾)所以我们将这里的正则拆分一下:'(^| )'表示的就是获取每一项的开头,因为我们知道如果^不是放在[]里的话就是表示开头匹配...因为其实最后一个cookie项是没有';'的,所以它可以合并到=([^;]*)这一步。最后获取到的match其实是一个长度为4的数组。

95650
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JQuery最全常用方法指南

    map(callback) 将jQuery对象中的一组元素利用callback方法转换其值,然后添加到一个jQuery数组中。 not(expr) 从匹配的元素集合中删除与指定的表达式匹配的元素。...slice(start, [end]) 从匹配元素集合中取得一个子集,和内建的数组的slice方法相同。 add(expr) 把与表达式匹配的元素添加到jQuery对象中。...contents() 取得一个包含匹配的元素集合中每一个元素的所有子孙节点的集合(只包括元素节点,不 包括文本节点),如果元素为iframe,则取得其中的文档元素 find(expr) 搜索所有与指定表达式匹配的元素...2、jQuery对象与dom对象的转换 只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是 jquery对象。....innerHTML; 3、如何获取jQuery集合的某一项 对于获取的元素集合,获取其中的某一项(通过索引指定)可以使用eq或get(n)方法或者索引号获取,要注意,eq返回的是jquery对象,而

    11K31

    《javascript高级程序设计》核心知识总结

    ,[this]) 2.some 对数组中每一项运行给定函数,如果函数对任一项都返回true,则返回true 3.filter 对数组中每一项运行给定函数,返回该函数会返回true的项组成的数组 4.forEach...,其他项为与模式中捕获组匹配的字符串 test(text) 接收一个字符串参数,在模式与该参数匹配是返回true // RegExp构造函数属性 leftContext | $`(短属性名) //...对象 2.search(pattern) // 参数与match参数相同,返回字符串中第一个匹配项的索引 3.replace(str | pattern, text | fn) //第一个参数为想要被替换的字符串或正则表达式...模式的匹配项,模式的匹配项在字符串中的位置,原始的字符串 正则表达式中定义了多个捕获组的情况下,传递的参数依次是模式的匹配项,第一个捕获组的匹配项,第二个捕获组的匹配项...() //获取所有实例属性,包括不可美枚举的 8.实例中的指针只指向原型,而不指向构造函数 9.重写原型对象会切断现有原型与之前存在的对象实例之间的联系,他们引用的任然是最初的原型 4.组合式(构造函数模式和原型模式

    2.4K20

    2020最新前端面试题_2020年前端面试题

    new关键字,this指向new出来的对象 在事件中,this指向触发这个事件的对象 6、js数组和对象的遍历方式 for in for forEach for-of 7、map与forEach的区别...,改变原数组, 返回推入/弹出项 unshift / shift : 头部推入和弹出,改变原数组,返回操作项 sort(fn) / reverse : 排序与反转,改变原数组 concat : 连接数组...父组件把方法传入子组件中,在子组件里直接调用这个方法。 46、 如何让 CSS 只在当前组件中起作用? 在组件中的 style 前面加上 scoped 47、如何获取 dom?...短暂性的时候,我们只需要将数据存在内存中,只在运行时可用 持久性存储,可以分为 浏览器端 与 服务器端 浏览器: cookie : 通常用于存储用户身份,登录状态等,http 中自动携带, 体积上限为...从项目的整体看 目用户的使用方式复杂 不同身份的用户有不同的使用方式(比如普通用户和管理员) 多个用户之间可以协作 与服务器大量交互,或者使用了 WebSocket View 要从多个来源获取数据 从组件角度看

    6.7K10

    前端开发JavaScript-巩固你的JavaScript

    ,并返回新的长度 valueOf() 返回数组对象的原始值 indexOf() 在数组中搜索指定元素并返回第一个匹配的索引 lastIndexOf() 在数组中搜索指定元素并返回最后一个匹配的索引...match() 找到一个或者多个正则表达式的匹配 replace() 替换与正则表达式匹配的子串 search() 检索与正则表达式匹配的值 slice() 提取字符串的片段,并在新的字符串中返回被提取的部分...正则对象方法 RegExp对象方法 属性 说明 test() 用于检测一个字符串是否匹配某个模式 exec() 该方法用于检索字符串中的正则表达式的匹配,该函数返回一个数组 [a-z] 匹配小写字母从...^ 匹配输入字符串的开始位置 $ 匹配输入字符串的结束位置 \b 匹配一个单词边界 \B 匹配非单词边界 /^[\d]{4}-[\d]{1,2}-[\d]{1,2}${1,2}$]/ 日期字符...表达式:g,i,m g 表示全局模式 应用于所有字符串,而非在发现第一个匹配项就停止 i 表示不区分大小写模式 m 表示多行模式 继续查找下一行中是否存在模式匹配的项 修饰符 描述 i 执行对大小写不敏感的匹配

    2.9K60

    【思维导图】前端开发JavaScript-巩固你的JavaScript知识体系

    ,并返回新的长度 valueOf() 返回数组对象的原始值 indexOf() 在数组中搜索指定元素并返回第一个匹配的索引 lastIndexOf() 在数组中搜索指定元素并返回最后一个匹配的索引...match() 找到一个或者多个正则表达式的匹配 replace() 替换与正则表达式匹配的子串 search() 检索与正则表达式匹配的值 slice() 提取字符串的片段,并在新的字符串中返回被提取的部分...正则对象方法 RegExp对象方法 属性 说明 test() 用于检测一个字符串是否匹配某个模式 exec() 该方法用于检索字符串中的正则表达式的匹配,该函数返回一个数组 [a-z] 匹配小写字母从...^ 匹配输入字符串的开始位置 $ 匹配输入字符串的结束位置 \b 匹配一个单词边界 \B 匹配非单词边界 /^[\d]{4}-[\d]{1,2}-[\d]{1,2}${1,2}$]/ 日期字符...表达式:g,i,m g 表示全局模式 应用于所有字符串,而非在发现第一个匹配项就停止 i 表示不区分大小写模式 m 表示多行模式 继续查找下一行中是否存在模式匹配的项 修饰符 描述 i 执行对大小写不敏感的匹配

    3.2K20

    一起学Elasticsearch系列-搜索推荐

    我们在进行搜索的时候,一般都会要求具有“搜索推荐”或者叫“搜索补全”的功能,即在用户输入搜索的过程中,进行自动补全或者纠错,以此来提高搜索文档的匹配精准度,进而提升用户的搜索体验,这就是Suggest。...suggest_mode:搜索推荐的推荐模式,参数值亦是枚举: missing:默认值,当用户输入的文本在索引中找不到匹配项时,仍然提供建议。...如果用户输入的文本在索引中没有匹配项,但有与之相关的建议结果,则这些建议结果将被返回作为搜索建议。这种模式适用于确保即使没有完全匹配的结果,用户仍能获得相关的建议。...无论用户输入的文本是否与索引中的某个词项完全匹配,Term Suggester 都会提供一组建议结果。这种模式适用于用户输入的文本可能只是部分匹配的情况,以便提供更多的补全或纠错建议。...它接受一个匹配查询作为参数,并且只有当建议的文本与该查询匹配时,才会返回该建议。还可以在查询参数的 "params" 对象中添加更多字段。

    43920

    最新前端初中级面试题合集一,你确定不看一看嘛

    link属于HTML标签,而@import是CSS提供的页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载 import只在IE5以上才能识别,而link是HTML...// 匹配css选择器匹配的所有集合 获取和修改元素HTML 元素HTML内容 // ele代表获取的元素 ele.innerHTML // 获取元素HTML ele.innerHTML...// (节点对象、自定义对象、array(数组)、json、function、系统对象) Undefined 未定义 Symbol // Symbol是由ES6规范引入的一项新特性,它的功能类似于一种标识唯一性的...实际上浏览器和服务器之间仅需传递session id即可,服务器根据session-id找到对应的用户session对象 session存储数据更安全一些,一般存放用户信息,浏览器只适合存储一般的数据...只存在服务端,不能共享到其他的网站和第三方App 2、token是oAuth Token,提供的是认证和授权,认证针对用户,授权是针对App,目的就是让某APP有权访问某用户的的信息。

    3.6K20

    【实战】自定义 ESLint Plugin

    比如下面这个场景,我需要根据 label 去决定对象在数组中顺序(注意:我们这个场景下数组的顺序对业务是没有影响的),Eslint 这个规则就无能为力了。...在 AST Selector的末尾添加 :exit 将导致在遍历过程中退出匹配节点时调用侦听器,而不是在输入匹配节点时。...我们知道 ESlint 的检测可以指定到文件维度,但是我们希望只针对部分的代码进行检测。要不然像对象数组顺序,假如都开了检测,将会有很多报错或者警告。...field) return; 拿到数组中每一项目标字段对应的值([ 'a', 'C', 'B' ])。...的基础原理以及如何自定义 Eslint 插件来解决对象数组排序的问题,除此之外,我们可能还有其他的场景可以进行尝试,欢迎大家参与讨论~ 参考 ESLint 工作原理探讨[9] 自定义 ESLint

    80810

    一个合格的初级前端工程师需要掌握的模块笔记

    对象(Object) js中内置了如下的对象: Object 是所有JS对象的超类(基类),JS中的所有对象都是继承自Object对象的 Array 数组对象 定义数组属性和方法 Number...image 正则方法 test方法 检索字符串中指定的值。 exec方法 该方法用于检索字符串中的正则表达式的匹配,该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。...DOM对象方法 getElementById(id) 通过id获取DOM对象(对象) getElementsByTagName(tag) 通过标签获取DOM对象(“类似数组”对象) getElementsByName...(name) 通过name获取DOM对象(“类似数组”对象) getElementsByClassName(class) 通过class获取DOM对象(IE8以下不支持) 操作DOM间的关系 createElement...[attribute*=value] 匹配给定的属性是以包含某些值的元素 位置选择器 :first匹配第一个元素 :last获取最后一个元素 :not 去除所有与给定选择器匹配的元素 :even

    3.7K10

    教程|Python Web页面抓取:循序渐进

    这次会概述入门所需的知识,包括如何从页面源获取基于文本的数据以及如何将这些数据存储到文件中并根据设置的参数对输出进行排序。最后,还会介绍Python Web爬虫的高级功能。....*”中提供的路径是否与webdriver可执行文件的位置匹配。如果收到消息表明版本不匹配,重新下载正确的webdriver可执行文件。...接下来是处理每一个的过程: 提取4.png 循环如何遍历HTML: 提取5.png 第一条语句(在循环中)查找所有与标记匹配的元素,这些标记的“类”属性包含“标题”。...然后在该类中执行另一个搜索。下一个搜索将找到文档中的所有标记(包括,不包括之类的部分匹配项)。最后,将对象赋值给变量“name”。...应该检查实际上是否有分配给正确对象的数据,并正确地移动到数组。 检查在前面步骤中采集数据是否正确的最简单方法之一是“打印”。

    9.2K50

    如何使用JavaScript中的正则表达式精准匹配字符串

    在前端开发中,我们有时需要在代码中找到一个完全匹配的字符串,比如在用户输入或字符串处理时进行精确匹配。在本文中,我将为大家介绍如何使用JavaScript来实现这一需求。...验证用户输入的订单编号 假设我们有一个业务需求,需要验证用户输入的订单编号是否与预期的格式完全一致。订单编号是一个固定格式的字符串,例如“ORD123”。...例如,假设我们想将用户输入的所有匹配项都放入一个数组中,我们可以使用展开运算符来实现: const orderNumber = 'ORD123'; const matchedOrders = [...orderNumber.match...因为match方法返回的匹配对象是一个可迭代对象,所以我们可以使用展开运算符将其转换为数组。...结束 通过本文的介绍,我们了解了如何使用JavaScript的match方法结合正则表达式来进行字符串的精准匹配。在实际业务场景中,这种方法特别适合用来验证用户输入、匹配固定格式的字符串等需求。

    18710

    javascript正则表达式 教程_js正则表达式匹配字符串

    然后我们调用了一个检索的方法search(),这个方法需要传入一个正则表达式对象为参数,根据这个参数去字符串中匹配相应的字符串,如果匹配到了,则返回第一个与之匹配的字符的索引值;若没匹配到,返回-1。...后面跟的是请求参数,如果我们想要获取请求参数 query 的值,也就是 query= 后面的字符串,我们该如何使用正则表达式去匹配呢?...所以我们可以在我们可以使用小括号来定义一个子匹配模式,这样在返回的数组中直接获取小括号匹配返回的值就可以了。...RegExp对象,其实使用直接量,在内部还是会调用RegExp()构造函数去创建对象实例的,那我们就来看看直接通过RexExp()构造函数是如何创建对象的吧。...五、实战应用 (1)判断电话号码格式 应用场景:判断用户输入的电话号码格式是否正确 电话号码格式:1开头,后面跟10位数字 let str = "12356456132" //str为用户输入的电话号码

    3.4K10

    React与Redux开发实例精解

    ,如font-size为fontSize 4.注释写在{}内 5.数组会自动展开所有成员,但是如果数组或迭代器中的每一项都是HTML标签或组件,那么它们必须要拥有唯一的key属性 6.React可以渲染...,可以构造函数中初始化内部状态,可以通过this.setState方法更新内部状态,还可以使用this.state获取内部状态,这些内部状态与React的事件系统配合就可以实现一些用户交互功能 2.Props...(这里的this指的是组件实例) 2.理想状态下,程序的所有数据都应该放在Redux的全局状态中 3.如果一些状态只在一个组件内部临时使用,也可以使用组件的内部状态 十五、React与Redux中的数组处理...4.map()方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组 5.every()方法用于测试数组中所有元素是否都通过了指定函数的测试 6.some()方法用于测试数组中是否至少有一项元素通过了指定函数的测试...2.配置路由匹配信息,可以告诉路由如何根据URL来运行和显示相应的组件 3.Link组件的功能和标签相似,但是它支持一些可用于激活状态的属性 4.要实现服务端路由,只需要在Express中间件加上一个匹配路由的函数

    2.1K20

    JavaScript正则表达式的模式匹配教程,并且附带充足的实战代码

    expression)是一个描述字符模式的对象,简单点来讲就是通过正则表达式规定的模式,从一堆字符串中,找到与该模式匹配的字符串,并可以完成检索或字符串替换的功能。...后面跟的是请求参数,如果我们想要获取请求参数 query 的值,也就是 query= 后面的字符串,我们该如何使用正则表达式去匹配呢?...所以我们可以在我们可以使用小括号来定义一个子匹配模式,这样在返回的数组中直接获取小括号匹配返回的值就可以了。...RegExp对象,其实使用直接量,在内部还是会调用RegExp()构造函数去创建对象实例的,那我们就来看看直接通过RexExp()构造函数是如何创建对象的吧。...五、实战应用 (1)判断电话号码格式 应用场景:判断用户输入的电话号码格式是否正确 电话号码格式:1开头,后面跟10位数字 let str = "12356456132" //str为用户输入的电话号码

    1.3K20

    vue高频面试题合集(二)附答案

    推荐在 created 钩子函数中调用异步请求,因为在 created 钩子函数中调用异步请求有以下优点:能更快获取到服务端数据,减少页面加载时间,用户体验更好;SSR不支持 beforeMount 、...5. unbind:只调用一次,指令与元素解绑时调用。那vue中是如何检测数组变化的呢?...数组里每一项可能是对象,那么我就是会对数组的每一项进行观测,(且只有数组里的对象才能进行观测,观测过的也不会进行观测)vue3:改用proxy ,可直接监听对象数组的变化。....lazy 通过这个修饰符,转变为在 change 事件再同步.number 自动将用户的输入值转化为数值类型.trim 自动过滤用户输入的首尾空格键盘事件的修饰符.enter.tab.delete (...diff 算法的过程中,先会进行新旧节点的首尾交叉对比,当无法匹配的时候会用新节点的 key 与旧节点进行比对,从而找到相应旧节点.更准确 : 因为带 key 就不是就地复用了,在 sameNode 函数

    1K30

    前端常见手写面试题

    用正则写一个根据name获取cookie中的值的方法function getCookie(name) { var match = document.cookie.match(new RegExp('(...";"的(比如username的结尾),也可能是没有的(比如user-roles的结尾)所以我们将这里的正则拆分一下:'(^| )'表示的就是获取每一项的开头,因为我们知道如果^不是放在[]里的话就是表示开头匹配...因为其实最后一个cookie项是没有';'的,所以它可以合并到=([^;]*)这一步。最后获取到的match其实是一个长度为4的数组。...,连续输入文字后发送 AJAX 请求进行验证,验证一次就好按钮提交场景:防止多次提交按钮,只执行最后提交的一次服务端验证场景:表单验证需要服务端配合,只执行一段连续的输入事件的最后一次,还有搜索联想词功能类似...Array.isArray(data)) { return result } // 使用map,将当前对象的id与当前对象对应存储起来 let map = {}; data.forEach

    36220

    C#学习笔记—— 常用控件说明及其属性、事件

    当有模式地显示窗体时,只能对模式窗体上的对象进行输入。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后才能对另一窗体进行输入。有模式显示的窗体通常用做应用程序中的对话框。...即文本框中的每一行存放在 Lines数组的一个元素中。 (12)Modified:用来获取或设置一个值,该值指示自创建文本框控件或上次设置该控件的内容后,用户是否修改了该控件的内容。...当把此属性值设置为字符串值时,ListBox 控件将在列表内搜索与指定文本匹配的项并选择该项。若在列表中选择了一项或多项,该属性将返回第一个选定项的文本。...[格式1]: ListBox对象.FindString(s); [功能]:在“ListBox 对象”指定的列表框中查找字符串 s,如果找到则返回该项从零开始的索引;如果找不到匹配项,则返回ListBox.NoMatches...需注意的是:上述两个对话框只返回要打开或保存的文件名,并没有真正提供打开或保存文件的功能,程序员必须自己编写文件打开或保存程序,才能真正实现文件的打开和保存功能。

    9.9K20

    70个NumPy练习:在Python下一举搞定机器学习矩阵运算

    ,练习中的其他代码才能正常运行。...输入: 输出: 答案: 12.从一个数组中删除存在于另一个数组中的元素? 难度:2 问题:从数组a中删除在数组b中存在的所有元素。 输入: 输出: 答案: 13.获取两个数组元素匹配的索引号。...难度:2 问题:获取数组a和b的元素匹配的索引号 输入: 输出: 答案: 14.从numpy数组中提取给定范围内的所有数字? 难度:2 问题:从数组a提取5到10之间的所有元素。...难度:2 问题:从数组a中,替换大于30包括30且小于10到10的所有值。 输入: 答案: 48.如何从numpy数组中获取n个值的位置? 难度:2 问题:获取给定数组a中前5个最大值的位置。...难度:2 问题:为给定的数字数组a排序。 输入: 输出: 答案: 55.如何使用numpy对多维数组中的元素进行排序? 难度:3 问题:创建一个与给定数字数组a相同形式的排列数组。

    20.7K42
    领券