
JavaScript
文章平均质量分 85
前端大白话
能用自己的力量站在这片大地上的人都是勇敢的人,而我想成为这样
展开
-
JavaScript描述Object.create()方法的原理及作用,如何利用它创建一个具有指定原型的对象?
在JavaScript里, 方法就像是一个神奇的魔法棒,它能帮你创建出带有特定原型的对象。啥是原型呢?简单来说,原型就像是一个模板,新创建的对象可以从这个模板那里继承属性和方法。是JavaScript里一个特别有用的方法,它能让你创建一个新对象,同时让这个新对象继承另一个对象的属性和方法。下面咱就用通俗易懂的话详细讲讲它的原理,还会在每句代码上加上注释。代码解释定义原型对象:这里我们定义了一个名为 的对象,它有一个属性 和一个方法 。这个对象将作为新对象的原型。使用 创建新对象:这行代码使原创 2025-03-26 19:58:49 · 723 阅读 · 0 评论 -
Vue 中directive的钩子函数(bind、inserted 等)的作用及使用场景
在 Vue 里,指令(directive)是个超实用的东西,它能让你在不改动组件逻辑的情况下,给 HTML 元素添加一些特殊的行为。Vue 指令有好几个钩子函数,下面我就挨个给你讲讲这些钩子函数的作用和使用场景,还会附上带注释的代码示例。这些钩子函数能让你在不同的阶段对指令绑定的元素进行操作,大大增强了 Vue 指令的灵活性。你可以根据具体的需求选择合适的钩子函数来使用。原创 2025-03-25 19:52:40 · 372 阅读 · 0 评论 -
javascript实现一个函数,将数组中的元素随机打乱顺序
Fisher-Yates 洗牌算法:它的优点是每个元素在每个位置出现的概率是相等的,是一种公平的洗牌算法。通过不断地随机交换元素,让数组元素的顺序变得随机。使用 sort 方法和随机比较函数:这种方法比较简单,但由于sort方法的实现原理,它并不是一种完全公平的洗牌算法,有些元素可能会有更高的概率出现在某些位置。不过在一些对随机性要求不是特别高的场景下,这种方法也可以使用。除了Fisher-Yates 洗牌算法,还有哪些方法可以实现数组元素的随机打乱?原创 2025-03-25 19:46:41 · 274 阅读 · 0 评论 -
JavaScript 中for...in和for...of循环的原理区别,在遍历对象和数组时分别如何使用
它们就像是两个不同的小帮手,能帮你在对象和数组里溜达溜达,找找里面装的东西,但它们的工作方式可不一样哦。循环在遍历数组时,拿到的是索引,而且它还可能会遍历到数组原型链上的可枚举属性,所以一般不建议用它来遍历数组。因为它会遍历对象自身的可枚举属性以及原型链上的可枚举属性,能把对象里的属性名一个一个揪出来。循环会依次把对象的属性名和数组的索引找出来,然后你就能根据这些找到对应的值啦。循环去遍历一个对象时,它会把对象里的每个属性名一个一个地揪出来,让你能对每个属性做点儿啥。循环就像有礼貌的客人,直接拿值。原创 2025-03-24 19:50:40 · 562 阅读 · 0 评论 -
大白话ES6 新特性,优势和用法?
在 ES6 之前,JavaScript 只有全局作用域和函数作用域,使用var声明变量时可能会导致变量提升和作用域混乱的问题。let和const用于声明块级作用域的变量,let声明的变量可以重新赋值,而const声明的常量一旦赋值就不能再重新赋值(对于引用类型,虽然不能重新赋值,但可以修改其内部属性)。箭头函数是 ES6 中引入的一种简洁的函数定义方式,它使用箭头=>来定义函数。箭头函数没有自己的thisargumentssuper或new.target,它的this值继承自外层函数。原创 2025-02-22 20:41:36 · 905 阅读 · 0 评论 -
大白话JavaScrip事件循环机制,你了解多少?
总的来说,事件循环机制是JavaScript实现异步编程的基础,它通过执行栈、任务队列以及不断循环的机制,让JavaScript能够有条不紊地处理各种同步和异步任务,保证了程序的正常运行和响应。总的来说,浏览器和Node.js中的事件循环机制都是为了实现异步编程,但由于它们的应用场景不同,在具体的任务类型、事件循环阶段和执行顺序等方面存在一些差异。在执行这段代码时,JavaScript引擎会先将。函数执行完返回结果后从栈顶弹出,函数继续执行并返回最终结果,然后。函数压入执行栈,在执行。函数也从执行栈弹出。原创 2025-02-22 20:35:18 · 857 阅读 · 0 评论 -
大白话JavaScript异步编程方式多,区别是什么?
总体来说,回调函数是最基础的异步编程方式,但容易出现回调地狱;Promise解决了回调地狱的问题,让异步操作更易管理;async/await则是在Promise的基础上,让异步代码看起来更像同步代码,是目前比较推荐的异步编程方式。实际开发中,可以根据具体的场景和需求来选择合适的异步编程方式。进行异步编程的代码看起来更简洁、更像同步代码。的链式调用在处理复杂异步逻辑时可能会让代码显得繁琐。让异步代码的结构更加清晰,错误处理也更加直观,而。想象成是实现异步操作的基础工具,而。之上的一种语法糖,它让使用。原创 2025-02-22 20:29:21 · 743 阅读 · 0 评论 -
react 将object对象渲染dom的方法
首先将object对象转换成对象let newarr=[] for (let i in item){ Object.keys(item).map((key) => newarr.push(item[key])) return( <div className="sanji-menu"> ...原创 2019-08-14 20:01:53 · 3049 阅读 · 0 评论 -
JavaScript全家桶之Promise 封装ajax,axios,fetch
Promise 简述 1、Promise 是一种异步的解决方案 2、分为三个状态,进行中,已成功(resolve),已失败(rejected) 3、两种结果,从进行中到已成功,或者是从进行中到已失败 4、Promise是同步的...原创 2018-08-24 09:50:58 · 1092 阅读 · 0 评论 -
Es6的Set和map的数据结构
Es6的Set和map的数据结构Set 实例的属性和方法Set 结构的实例有以下属性。* Set.prototype.constructor:构造函数,默认就是Set函数。* Set.prototype.size:返回Set实例的成员总数。Set 实例的方法分为两大类:操作方法(用于操作数据)和遍历方法(用于遍历成员)。下面先介绍四个操作方法。* add(value):添加某个...原创 2018-07-25 18:19:18 · 325 阅读 · 0 评论 -
js数组字符串的一些方法扩展
es6数组去重// es6的数组去重方法/* 自定义数组操作方法实现数组去重功能 */var arr = [1, 1, 2, 3, 4, NaN, NaN, 3, 3, 4, 5, 6, 7, 7, 8, 9, 9, 10]Array.prototype.distinct=function () { var newarr = [...new Set(...原创 2018-07-12 09:28:42 · 259 阅读 · 0 评论 -
常用正则表达式
常用正则表达式 一、校验数字的表达式1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数:^(\-)?\d...原创 2018-06-10 18:17:34 · 427 阅读 · 0 评论 -
将网址转换成对象
将网址转换成对象 /** * * 网址切割成对象思路: * 1、首先把网址放入字符串中 * 2、使用字符串切割方法split(),以问号进行切割,切割为两个数组,然后使用数组方法pop()获取到最后一位; * 3、使用for循环遍历数组,然后继续以等号对数组里的每个值进行切割,切割完成。 * 4、声明一个对象 将切割好原创 2017-11-15 16:10:19 · 621 阅读 · 0 评论 -
ES6中的常量和变量
今天我们来聊聊ES6中的常量和变量首先我们要了解什么是ES6?ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。原创 2017-12-01 11:56:37 · 501 阅读 · 0 评论 -
javascript event(事件对象)详解
javascript event(事件对象)详解原创 2017-11-22 10:29:04 · 558 阅读 · 0 评论 -
悟透JavaScript(理解JS面向对象的好文章)
悟透JavaScript(理解JS面向对象的好文章)引子编程世界里只存在两种基本元素,一个是数据,一个是代码。编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力。数据天生就是文静的,总想保持自己固有的本色;而代码却天生活泼,总想改变这个世界。你看,数据代码间的关系与物质能量间的关系有着惊人的相似。数据也是有惯性的,如果没有代码来施加外力,她总保持自己原来的状态。而代码就象能量,他存在转载 2017-12-05 14:15:06 · 813 阅读 · 0 评论 -
Bootstrap+jq+jqajax+php+数据库增删改查源码
前台html lang="zh-CN">head> meta charset="utf-8"> meta http-equiv="X-UA-Compatible" content="IE=edge"> meta name="viewport" content="width=device-width, initial-scale=1"原创 2018-01-11 16:28:43 · 2770 阅读 · 26 评论 -
Bootstrap+jq+jqajax+php+数据库增删改查源码(跳转页面版)
今天为大家带来的Bootstrap+jq+jqajax+php+数据库增删改查源码(跳转页面)。添加页面html lang="zh-CN">head> meta charset="utf-8"> meta http-equiv="X-UA-Compatible" content="IE=edge"> meta name="viewport" content=原创 2018-01-17 12:16:05 · 879 阅读 · 0 评论 -
javascript 字符串原型封装将url里的数据转换成对象
javascript 字符串原型封装将url里的数据转换成对象String.prototype.getUrl=function () { //首先通过split以问号切割成数组两个数组,用数组方法pop保留下标为1的数组,然后以“&”再次切割成数组 var str=this.split("?").pop().split("&"); //创建 空对象 var res={}原创 2017-11-29 15:03:11 · 364 阅读 · 0 评论