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

牛客网js题库正解(1~20题)

str:'-'+str } 4、单项绑定 请补全JavaScript代码,要求每当id为"input"的输入框值发生改变时触发id为"span"的标签内容同步改变。...请补全JavaScript代码,要求返回一个长度为参数值并且每一项值都为参数值的数组。...请补全JavaScript代码,实现一个函数,要求如下: 根据输入的数字范围[start,end]和随机数个数"n"生成随机数 生成的随机数存储到数组中,返回该数组 返回的数组不能有相同元素 注意:...该函数接受两个参数分别为数组、索引值,要求在不改变原数组的情况下返回删除了索引项的新数组。...= idx) } 10、计数器 请补全JavaScript代码,要求每次调用函数"closure"时会返回一个新计数器。每当调用某个计数器时会返回一个数字且该数字会累加1。

70920

JavaScript 常见面试题分析(三)

代码的环境的抽象概念,每当 Javascript 代码在运行的时候,它都是在执行上下文中运行,JavaScript 中有三种执行上下文类型: ① 全局执行上下文;② 函数执行上下文;③ Eval 函数执行上下文...创建词法环境组件 c. 创建变量环境组件 执行阶段 完成对所有这些变量的分配,最后执行代码 当 JavaScript 引擎第一次遇到你的脚本时,它会创建一个全局的执行上下文并且压入当前执行栈。...每当引擎遇到一个函数调用,它会为该函数创建一个新的执行上下文并压入栈的顶部,因为不同的调用可能会有不同的参数 JS 引擎会执行那些执行上下文位于栈顶的函数,当该函数执行结束时,执行上下文从栈中弹出,控制流程到达当前栈中的下一个上下文...key] } } return copy } JSON.parse(JSON.stringify(obj)) forEach() 和 map() 的区别 map()会分配内存空间存储新数组并返回...,forEach()不会返回数据 forEach()允许callback更改原始数组的元素,map()返回新的数组 描述cookie localStorage sessionStorage 区别 cookie

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

    大话 JavaScript(Speaking JavaScript):第一章到第五章

    因此,每当提到语言的版本时,人们都说ECMAScript。JavaScript 的当前版本是 ECMAScript 5;ECMAScript 6 目前正在开发中。...每当期望对象时(参数,对象链中的最后一个等),它被用作非值。 ### 警告 `undefined`和`null`没有属性,甚至没有标准方法,如`toString()`。...= 排序运算符(用于字符串和数字):>, >=, <, <= 真值和假值 每当 JavaScript 期望布尔值(例如if语句的条件)时,可以使用任何值。它将被解释为true或false。...map通过将函数应用于现有数组的每个元素来创建一个新数组: > [1,2,3].map(function (x) { return x*x }) [ 1, 4, 9 ] 正则表达式 JavaScript...网景很快意识到 Web 需要变得更加动态。即使你只是想检查用户在表单中输入的正确值,也需要将数据发送到服务器以便提供反馈。

    37510

    一道二进制子串算法,让面试官都解不出来?

    什么是JavaScript Math 对象? 定义和用法 min() 方法可返回指定的数字中带有最低值的数字。...要添加到数组的第一个元素。 newelement2 可选。要添加到数组的第二个元素。 newelementX 可选。可添加多个元素。 返回值 把指定的值添加到数组后的新长度。...它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。...// 计算后一个字符连续出现的次数 let cur = 1 // 每当 pre >= cur 时,既满足条件一次 count++ // 前面有两个0,后面它自己为1 // 计数count一开始为0...如果出现不一样的字符时,即情况:10或者是01这些情况,那么计算前一个字符连续出现的次数从0变为1,它有数字,即开始有次数了。把当前cur的次数赋值给pre(计算前一个字符连续出现的次数)。

    59530

    一道二进制子串算法,让面试官都解不出来?

    什么是JavaScript Math 对象? 定义和用法 min() 方法可返回指定的数字中带有最低值的数字。...要添加到数组的第一个元素。 newelement2 可选。要添加到数组的第二个元素。 newelementX 可选。可添加多个元素。 返回值 把指定的值添加到数组后的新长度。...它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。...// 计算后一个字符连续出现的次数 let cur = 1 // 每当 pre >= cur 时,既满足条件一次 count++ // 前面有两个0,后面它自己为1 // 计数count一开始为...如果出现不一样的字符时,即情况:10或者是01这些情况,那么计算前一个字符连续出现的次数从0变为1,它有数字,即开始有次数了。把当前cur的次数赋值给pre(计算前一个字符连续出现的次数)。

    44930

    【JavaScript】JavaScript开篇基础(1)

    3.三个最简单的 JavaScript 输入和输出语句: prompt返回值是字符串类型。 对于js的代码,它们是逐行执行。...4.变量 JavaScript 是一种动态类型语言,这意味着在声明变量时不需要指定其类型,变量的类型可以根据赋值的内容动态改变。这跟我们之前学的很不一样,没之前的java,c 严格。...所以JavaScript 中有三种声明变量的方式:var、let 和 const。它们在作用域、重新赋值、以及是否允许重复声明等方面存在差异。...10.数组 数组的创建 最简单的方法是使用数组字面量(用方括号 [] 包围元素)来创建数组: let numbers = new Array(1, 2, 3, 4, 5); 这种方法直接在代码中指定数组的元素...arguments 对象是类数组对象,因此可以使用索引访问参数,但它不是一个真正的数组(例如,它没有 map、forEach 等数组方法)。

    7510

    10个实用的Javascript技巧

    每当调用next方法时,这些转换都会按需发生,因此称为惰性求值! ❝有了这个技巧,你不再需要依赖全局/类范围的变量来记住状态!...这种语法允许使用多种技巧,例如变量交换单行或仅解析返回对象中有意义的属性。 6. 使用扩展运算符浅拷贝对象(和数组!)...在这个例子中,我们还使用了最近展示的扩展运算符来扩展集合并构造一个数组。 这个技巧适用于任何类型的值,它甚至可以处理 JavaScript 的一些奇怪的相等行为。...你还可以使用集合从复杂对象的数组中删除重复项。 8.等待多个promise完成 每当你需要启动多个任务并等待它们完成时,这个技巧就会发挥作用。...使用 map 在数组中转换值 这可能是本文中最简单的技巧之一,但它提供了一种非常优雅的解决方案,用于将表示为字符串的数值数组转换为 JavaScript 数字(所有 JavaScript 数字都是 64

    1.5K20

    JavaScript 入门(下)

    目录 一、JavaScript简介 二、JavaScript的特点 1、动态改变页面内容 2、动态改变网页的外观 3、验证表单数据 4、响应事件 三、内容 1、数组对象 一、数组基础 二、数组的属性和方法...2、创建数组 在JavaScript中,创建数组共有3种方法: (1)新建一个长度为0的数组 举例: 1 var myArr = new Array(); (2)新建长度为n的数组 举例: 1 2 3...在绿叶学习网的JavaScript在线测试工具中,当点击“调试代码”按钮时,就会打开一个新的窗口,并把HTML文档输出到新的页面中去。...语法: 1 窗口名.close(); 说明: 使用window.open()方法动态创建的窗口时,我们可以将窗口以变量形式保存,然后再使用close()方法关闭动态创建的窗口。...1、创建节点 在JavaScript中,创建新节点都是先用document对象中的createElement()和createTextNode()这2种方法创建一个元素节点,然后再通过appendChild

    1.1K20

    面试100题及答案_三特点带你认识基层岗位常见面试题

    第5期:在html5中,实现输入框占位符的属性是:? 答案:placeholder属性;它提供可描述输入字段预期值的提示信息,该提示会在输入字段为空时显示,并会在字段获得焦点时消失。...答案:“yes“,通过字面量方式创建的数组对象是属于Array类的一个实例,所以返回true。故弹出”yes“。...第66期:在JavaScript数组中,实现向数组末尾添加一个元素的方法是: ? 答案:push( );此方法可向数组的末尾添加一个或多个元素,并返回新的长度。...答案:onmousemove事件,每当用户把鼠标移动一个像素,就会发生一个 mousemove 事件。...注意: 只有字符串中的第一个数字会被返回。 第95期:在JavaScript 全局函数中,检测某个值是否是数字的函数是: ?

    1.1K10

    对线面试官 | 字节跳动一面

    大彬:由于数组的容量是以2的幂次方扩容的,那么一个Entity在扩容时,新的位置要么在原位置,要么在原长度+原位置的位置。...大彬:原因是数组长度变为原来的2倍,表现在二进制上就是多了一个高位参与数组下标计算。...当有新任务时,如果线程池中线程数没有达到线程池的基本大小,则会创建新的线程执行任务,否则将任务放入阻塞队列。...当阻塞队列填满时,如果线程池中线程数没有超过最大线程数,则会创建新的线程运行任务。否则根据拒绝策略处理新任务。...每当线程池创建一个新的线程时,都是通过线程工厂方法来完成的。在 ThreadFactory 中只定义了一个方法 newThread,每当线程池需要创建新线程就会调用它。

    39010

    前端系列第8集-Javascript系列

    当 JavaScript 执行代码时,每个函数都会创建一个新的执行上下文,并将其添加到作用域链的顶部。...每当引擎遇到一个新的函数调用时,它会创建一个新的执行上下文并将其推入执行栈的顶部,使其成为当前活动的执行上下文。当该函数执行完毕时,它的执行上下文会被弹出执行栈,控制权回到前一个执行上下文。...例如,在一个表格中有很多行,每行都可以被点击,如果在每个行元素上都绑定一个事件处理程序,这将导致大量重复代码。使用事件代理,则只需要在表格容器元素上绑定一个事件处理程序即可。 动态加载元素的事件处理。...将构造函数的 this 关键字绑定到新创建的空对象上,以便构造函数中使用 this 时指向新创建的对象实例。 执行构造函数中的代码,根据代码逻辑动态添加属性和方法。...正则表达式在编程中有广泛应用,例如: 验证输入数据格式:例如验证一个邮政编码是否符合规范,或者检查一个日期字符串的格式是否正确。

    21910

    分享 8 个关于高级前端的 JavaScript 面试题

    无论操作数的类型如何,它都会优先考虑数字减法。当操作数不是数字类型时,JavaScript 会执行隐式强制转换,将其转换为数字。在本例中,“11”被转换为数值 11,并且表达式简化为 11 - 1。...return array; } const arr = [1, 2, 3]; const newArr = duplicate(arr); console.log(newArr); 在此代码片段中,我们需要创建一个包含输入数组的重复元素的新数组...初步检查后,代码似乎通过复制原始数组 arr 中的每个元素来创建一个新数组 newArr。然而,重复函数本身出现了一个关键问题。 重复函数使用循环来遍历给定数组中的每个项目。...每当使用 == 运算符比较 2 个值时,JavaScript 就会执行抽象相等比较算法。 该算法有以下步骤: 正如您所看到的,该算法考虑了比较值的类型并执行必要的转换。...为了实现所需的输出,您可以使用 let 关键字为循环的每次迭代创建一个新范围,确保每个回调捕获 i 的正确值: const arr = [10, 12, 15, 21]; for (let i = 0;

    55930

    24个简单的示例复习下JS数组的相关方法

    翻译 | 杨小二 1、创建数组 在Javascript中有多种创建数组的方法,最简单的一种是简单地将数组值分配给变量。...此方法在不更改原始数组的情况下创建一个新数组。 此方法最多可以接受两个参数,其中第一个参数对应于切片的开始,第二个参数对应于切片的最后一个索引。...13、反转数组 Javascript 提供了一个reverse () 方法来反转数组。 例如: 14、数字排序 在 Javascript 中,sort()方法用于按字母顺序对字符串数组进行排序。...例如: 该函数需要 3 个输入:项目值、项目索引、数组 21、Array.map()方法 该函数通过对数组的每个元素应用一个函数来创建一个新数组。 例如: 此方法不会更改原始数组。...在上面的例子中,每个数组元素乘以10。 22 、Array.filter()方法 此方法使用通过给定测试的数组元素创建一个新数组。 上面的例子创建了一个元素小于15的新数组。

    1K20

    《牛客网刷题之零基础入门前端之JavaScript》

    array } js-位置查找 题目描述 请补全JavaScript函数,要求以数字的形式返回第一个参数数组中第二个参数所在的首个索引值。...不要直接修改数组 arr,结果返回新的数组 输入描述: [1, 2, 3, 4, 2], 2 输出描述: [1, 3, 4] JavaScript function remove(arr, item)...不要直接修改数组 arr,结果返回新的数组 输入: [1, 2, 3, 4], 10 输出: [10, 1, 2, 3, 4] JavaScript function prepend(arr, item...不要直接修改数组 arr,结果返回新的数组 输入: [1, 2, 3, 4], 'z', 2 输出: [1, 2, 'z', 3, 4] JavaScript function insert(arr,...this.b } } WebAPI 元素操作 JS动态创建节点 题目描述 请补全JavaScript函数,根据参数数组创建li元素。

    23430

    令人头疼的Javascript隐式&强制转换

    因此,您可以在需要数字的地方传递一个字符串,在需要字符串的地方传递一个对象等,它会尝试将其转换为正确的类型。这是最好避免的 Javascript 功能。...4 : 1 // 1数字表达式中的非数字值字符串每当您在涉及以下任一运算符的数字表达式中将字符串作为操作数传递时:-, *, /, %,数字的转换过程类似于对值调用内置Number函数。...对象转换通常会导致[object Object],例如"name" + {} // "name[object Object]每个 javascript 对象都继承了一个toString方法,每当将对象转换为字符串时都会调用该方法...当它是数学表达式时,Javascript 将尝试将返回值转换为数字,如果不是。...valueOf方法,当您传递一个需要字符串或数字值的对象时,Javascript 将使用该方法。

    64600

    如何在TypeScript中使用基本类型

    这些特性为开发人员提供了 JavaScript 动态特性的灵活性,但也允许更可靠的代码库,其中可以在编译时使用类型信息来检测可能在运行时导致错误或其他意外行为的问题。...本教程中显示的所有示例都是使用 TypeScript 4.2.2 版创建的。 在 TypeScript 中声明变量类型 使用纯动态语言 JavaScript 编写代码时,我们无法指定变量的数据类型。...想象一下使用动态语言(例如 JavaScript)并像使用数字一样使用字符串变量。当我们没有严格的单元测试时,可能的错误只会在运行时出现。...输入数组有两种方法: 将 [] 附加到数组元素的预期类型。...例如,如果我们想输入一个包含多个数值的数组,我们可以这样做: const primeNumbers: number[] = [2, 3, 5, 7, 11]; 如果我们给这个数组分配了一个字符串值,TypeScript

    3.7K10

    前端相关片段整理——持续更新

    in 为遍历对象设计,不适用数组 key 以字符串作为键名 遍历数字键以及手动添加的其他键 可能会以任意顺序遍历键名 for...of 语法简洁,无以上缺点 循环value 不同用于foreach方法,...核心:由服务器发送一个响应标头 2.3. web安全 1) 将重要的cookie标记为http only 2) 只允许用户输入期望值 3) encode 4) 过滤或移除特殊标签 5) 过滤JavaScript...减少JavaScript中的垃圾回收 在初始化的时候新建对象,然后在后续过程中尽量多的重用这些创建好的对象。...另外还有以下三种内存分配表达式(可能不像new关键字那么明显了): {} (创建一个新对象) [] (创建一个新数组) function() {…} (创建一个新的方法,注意:新建方法也会导致垃圾收集...作用域链 为什么闭包就能访问外部函数的变量呢 Javascript中有一个执行环境(execution context)的概念,它定义了变量或函数有权访问的其它数据,决定了他们各自的行为。

    1.4K10

    JavaScript 入门基础 - 变量 数据类型(二)

    JS引擎根据=右边变量值的数据类型来判断的,运行完毕之后,变量就确定了数据类型 js拥有动态类型,相同的变量可用作不同的类型: var x = 10; // 数字型 var x = '天将降大任于斯人也...中的简单数据类型及其说明如下: 2. 2.2 数字型 Number JavaScript 数字类型既可以用来保存整数值,也可保存小数(浮点数)。...// 普通变量一次只能存储一个值 var age = 18; // 数组一次可以存储多个值 var arr = [3,5,7,8]; 2.7.2 创建数组的方式 js中有两种创建数组的方式: 利用 new...创建数组 var arr = new Array(); // 创建一个空的数组 利用数组字面量创建数组 // 使用数组字面量创建空的数组 var arr = []; // 使用数组字面量方式创建带初始值的数组...数组长度通过 “数组名.length” 获取。这个方法会动态监测元素的个数,当元素个数减少或增多,都会被检测出来。

    3.8K40

    百度Web前端技术学院(2)-JavaScript 基础

    参考: MDN Array JavaScript Array 对象 w3school 要求: // 对数组进行去重操作,只考虑数组中元素为数字或字符串,返回一个去重后的数组 function uniqArray...遍历原数组 若新数组中不存在当前元素,将其 push 入新数组中 返回新数组 实现: // 对数组进行去重操作,只考虑数组中元素为数字或字符串,返回一个去重后的数组 function uniqArray...当点击按钮时,把用户输入的兴趣爱好,按照上面所说的分隔符分开后保存到一个数组,过滤掉空的、重复的爱好,在按钮下方创建一个段落显示处理后的爱好。...当点击按钮时的行为同上 第三阶段 用户输入的爱好数量不能超过10个,也不能什么都不输入。当发生异常时,在按钮上方显示一段红色的错误提示文字,并且不继续执行后面的行为;当输入正确时,提示文字消失。...练习4:输入框即时提示 任务要求 在和上一任务同一目录下面创建一个task0002_4.html文件,在js目录中创建task0002_4.js,并在其中编码,实现一个类似百度搜索框的输入提示的功能。

    2.1K40
    领券