
javascript
文章平均质量分 69
devincob
熬代码者
展开
-
JavaScript Array slice()和splice()
JavaScript Array slice() 方法slice() 方法以新的数组对象,返回数组中被选中的元素。slice() 方法选择从给定的 start 参数开始的元素,并在给定的 end 参数处结束,但不包括。注释:slice() 方法不会改变原始数组。参数描述start可选。整数,指定从哪里开始选择(第一个元素的索引为 0)。使用负数从数组的末尾进行选择。如果省略,则类似于 “0”。end可选。整数,指定结束选择的位置。如果省略,将选择从开始位置到数组末尾的所原创 2022-02-23 11:32:33 · 655 阅读 · 0 评论 -
禁止选择网页中的文字
onselectstart和onselect的使用1.onselectstart这个事件主要是用于禁止选择网页中的文字。代码为:document.onselectstart =function(){ return false;} 另外ff/opera不支持此事件,ff可以用css控制:css: body { -moz-user-select: none; }。webkit浏览器可以使用“-khtml-user-select”,当然也可以使用onselectstart事原创 2020-05-20 18:51:12 · 320 阅读 · 0 评论 -
一道涉及宏任务和微任务的问题【同步和异步】
setTimeout(function(){ console.log('1')});new Promise(function(resolve){ console.log('2'); resolve();}).then(function(){ console.log('3')}); console.log('4'); 请你给出这段代码的运行顺序。...原创 2019-12-12 18:04:41 · 305 阅读 · 0 评论 -
将字符串’2019-02-05‘转换成2019年2月5日
formDate(){ let str = this.$user.userInfo.registerTime let year = str.split('-')[0] let month = str.split('-')[1] let date = str.split('-')[2] month = month.rep...原创 2019-01-16 12:38:18 · 3335 阅读 · 0 评论 -
Object.create()方法
Object.create()方法创建一个新对象,使用现有的对象来提供新创建的对象的proto。原创 2018-08-24 17:08:53 · 24197 阅读 · 2 评论 -
关于对象Object.assign(target, …sources) 方法-今日笔记
Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。语法:Object.assign(target, …sources) target:目标对象。 sources:源对象。 返回值:目标对象。描述如果目标对象中的属性具有相同的键,则属性将被源中的属性覆盖。后来的源的属性将类似地覆盖早先的属性。Object.assi...原创 2018-08-24 16:45:27 · 875 阅读 · 0 评论 -
编写程序使用递归,for,while计算数列1!+2!+3!+4!+5!+6!+7!+8!+9!+10!+...前N相的和
备用草稿 断点,调试器的功能之一,可以让程序中断在需要的地方,从而方便其分析。也可以在一次调试中设置断点,下一次只需让程序自动运行到设置断点位置,便可在上次设置断点的位置中断下来,极大的方便了操作,同时节省了时间。 ——百度百科简单地说,断点调试是指自己在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到...原创 2019-09-27 17:19:24 · 833 阅读 · 0 评论 -
JSON.parse()和JSON.stringify()方法解析和使用
再做后台管理系统的或者其他需要更改编辑 原绑定数据的时候 容易 忽略 数据拷贝带来的问题 代码 容易这样写 这里就是深拷贝问题 如果直接赋值 就会造成原数据的改变 如果拷贝的数据是数组可以用map转化 如果是对象可以用JSON.parse(JSON.stringify(item))这种方式转化...原创 2018-06-28 11:11:35 · 2274 阅读 · 0 评论 -
拾遗 HTML中disabled和readonly的区别
共同点:作用是使用户不能够更改表单域中的内容. 区别: 1、Readonly只针对input(text/password)和textarea有效,而disabled对于所有的表单元素有效,包括select,radio,checkbox,button等。 2、在表单元素使用了disabled后,我们将表单以POST或者GET的方式提交的话,这个元素的值不会被传递出去,而readonly会将该值传原创 2017-04-30 11:28:15 · 543 阅读 · 0 评论 -
html5和老的html缓存机制有什么不同?
HTML5 的应用缓存最关键的就是支持离线应用,可获取少数或者全部网站内容,包括 HTML、CSS、图像和 JavaScript 脚本并存在本地。该特性加速了网站的性能,可通过如下方式实现: …..原创 2017-04-30 11:14:42 · 1123 阅读 · 0 评论 -
JavaScript取消事件冒泡和阻止事件的默认行为(兼容写法)
功能:停止事件冒泡 function stopBubble(event) { // 如果提供了事件对象,则这是一个非IE浏览器 if ( event&& event.stopPropagation ) { // 因此它支持W3C的stopPropagation()方法 event.stopPropagation(); } else原创 2018-05-30 11:53:08 · 456 阅读 · 0 评论 -
JavaScript 中的Symbols, Iterators, Generators, Async/Await, and Async Iterators
本文中,我将介绍symbols,global symbols,iterators,iterables,generators ,async/await 和async iterators。我将首先解释“ 为什么 ”他们在那里,并展示他们如何使用一些有用的例子。符号在ES2015中,创建了一个新的(第6个)数据类型symbol。为什么创建这个数据类型呢?原因#1 - 添加具有向后兼容性的新核心功...原创 2018-09-19 17:09:49 · 246 阅读 · 0 评论 -
详解Vue的生命周期
vue组件的生命周期Vue所有的生命周期钩子自动绑定在this上下文到实例中,因此你可以访问数据,对属性和方法进行运算。这意味着你不能使用箭头函数来定义一个生命周期方法。这是因为箭头函数绑定了父上下文,因此this与你期待的Vue实例不同。1、beforeCreate 在实例初始化之后,数据观测和event/watcher时间配置之前被调用。2、created 实例已经创建完成之后被...原创 2018-12-21 11:12:51 · 522 阅读 · 0 评论 -
CROS跨域请求处理
前面的话 如果要问javascript中哪两个知识点容易混淆,作用域查询和this机制绝对名列前茅。前面的作用域系列已经详细介绍过作用域的知识。本系列开始将介绍javascript的另一大山脉——this机制。本文是该系列的第一篇——this的4种绑定规则默认绑定 全局环境中,this默认绑定到windowconsole.log(this === window);//true 函数...原创 2019-08-19 15:34:45 · 153 阅读 · 0 评论 -
ECMA2015(ES6)简单入门-8-数组的扩展__判断和处理数组方法大全
数组在面试中和应用中经常会出现,javascript中的数组与其他语言中的数组有些不同,为了方便之后数组的方法学习,整理了关于数组的操作方法。 先记:数组类型判断方法 let obj = [] method1: Object.prototype.toString.call(obj) method2:obj instanceof Array m...原创 2017-12-10 15:36:59 · 663 阅读 · 0 评论 -
对象浅拷贝深拷贝方法总结
第一种: for…inconst obj = { id:1, name:'zhangsan', age:18} for(let key in obj){ console.log(key + '---' + obj[key]) }输出结果:第二种:1)、Object.keys(obj)2)...原创 2019-08-05 10:26:06 · 1364 阅读 · 0 评论 -
new 一个对象具体做了什么
js数组以及对象的深拷贝(复制数组或复制对象)的方法原创 2019-07-16 17:43:55 · 272 阅读 · 0 评论 -
数组去重,以及找出数组中重复项
let removeArr = [1,2,3,2,6,5,3,'a',3,'hello'] let x = [...new Set(removeArr)] console.log(x) Array.prototype.extraChar = function(){ let cacheExtraChar = [] this.map((item...原创 2019-06-18 10:57:00 · 1018 阅读 · 1 评论 -
JavaScript判断一个字符串(数组)中出现次数最多的字符(元素)及其出现的次数
判断一个字符串中出现次数最多的字母:let str = '12345612';function getRepeat(){ let json = {}; // charAt() 方法可返回指定位置的字符。 for (let i = 0; i < str.length; i++) { if (!json[str.charAt(i)]) { //js...原创 2019-06-21 10:51:17 · 1551 阅读 · 0 评论 -
call和apply,bind的解析
apply、call在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向。call和apply的作用①调用函数②传参数③借用其他函数的方法:④改变函数内部的this指向function fn(){ console.log('调用函数') } fn.cal...原创 2019-03-08 16:42:12 · 320 阅读 · 0 评论 -
Vue全局API
// 让 dialog 支持鼠标拖动import Vue from ‘vue’import jQueyr from ‘jquery’const MSIE = (/Trident|IE/i.test(navigator.userAgent))/**指令使 Dialog 可移动*/Vue.directive(‘drag-dialog’, {update(el, binding){...原创 2019-07-02 11:46:57 · 160 阅读 · 0 评论 -
JavaScript数据类型:关于数据类型,你要知道那些?
Q: CSS 有哪些样式可以给子元素继承!可继承的:font-size,font-weight,line-height,color,cursor等不可继承的一般是会改变盒子模型的:display,margin、border、padding、height等Q: 行内元素有哪些?块级元素有哪些? 空(void)元素有那些?行内: input,span,a,img以及display:inl...原创 2018-05-30 11:48:09 · 278 阅读 · 0 评论 -
JavaScript常用方法
点击正则简单介绍去掉首尾空格/** * 清除字符串两边的空字符 * @param str * @param isGlobal * @returns {string|*} */ trim: function(str, isGlobal){ let result; result = String(str).rep原创 2017-12-22 17:17:34 · 419 阅读 · 0 评论 -
ECMA2015(ES6)简单入门-9-对象-对象的扩展-对象的新增方法
JS在1.6中为Array新增的几个方法map(),filter(),some(),every(),forEach(),reduce() 主要从两个角度来理解和记忆,一个是API的使用,一个是内部实现。 首先函数简述map():返回一个新的Array,每个元素为调用func的结果 filter():返回一个符合func条件的元素数组 some():返回一个boolean,判断是否有元素...转载 2019-08-04 16:46:05 · 753 阅读 · 0 评论 -
Javascript继承机制的设计思想
作者: 阮一峰我一直很难理解Javascript语言的继承机制。它没有”子类”和”父类”的概念,也没有”类”(class)和”实例”(instance)的区分,全靠一种很奇特的”原型链”(prototype chain)模式,来实现继承。要理解Javascript的设计思想,必须从它的诞生说起。1994年,网景公司(Netscape)发布了Navigator浏览器0.9版。这是历史上第一个比较成熟的转载 2017-05-04 21:06:22 · 270 阅读 · 0 评论 -
javascript中的关键字this
是否局部(Lexical)?包括我在内的许多人,都会这么描述箭头函数里 this 的行为:局部的 this。什么意思呢?<body><div id="demo" onclick="foo()" > 点我</div><script> document.getElementById('demo').onclick =function(){ console.log(this.t原创 2017-05-22 18:18:31 · 1266 阅读 · 0 评论 -
原生ajax 书写
1.创建XMLHttpRequest对象Js代码 function createXMLHTTPRequest() { //1.创建XMLHttpRequest对象 //这是XMLHttpReuquest对象无部使用中最复杂的一步 //需要针对I原创 2017-05-11 19:25:35 · 249 阅读 · 0 评论 -
前端汇总-2-javascript-常见面试题(前端面试相关)
1.求y和z的值是多少?&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;script type=&amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;text/javascript&amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;var x = 1;var y = 0原创 2017-05-03 11:09:52 · 798 阅读 · 0 评论 -
ECMA2015(ES6)简单入门-4-set&get-map-moudle-import-export default
SET就是一堆东西的集合// 有点像数组但set里不能有重复的内容 let dessert =new Set( apple); dessert.add(“quqi”); dessert.add(“water”); dessert.add(“water”); console.log(dessert); console.log(dessert.has(“water”)); console.原创 2017-04-16 13:52:57 · 716 阅读 · 0 评论 -
ECMA2015(ES6)简单入门-3-迭代器-生成器-定义类-__静态方法__继承
自定义迭代器 // {value: xx,done: true/false}function chef(foods){ let i=0; return { next(){ let done =(i>=foods.length), value= !done ?foods[i++]:undefined;原创 2017-04-14 20:00:15 · 306 阅读 · 0 评论 -
JS实现继承的6种方式
JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一。那么如何在JS中实现继承呢? JS继承的实现方式既然要实现继承,那么首先我们得有一个父类,代码如下:// 定义一个动物类function Animal (name) { // 属性 this.name = name || 'Animal'; // 实例方法 this.sleep = function(){ con原创 2017-04-25 09:15:57 · 606 阅读 · 0 评论 -
Js中三种弹出式消息提醒的命令是什么?(警告,确认,信息输入)
**1、警告框alert** 用法:在js中直接运用alert("警告"); **2、确认框confirm。** confirm() 方法用于显示一个带有指定消息和 OK 及取消按钮的对话框, 根据用户点击确认框上的按钮返回true与false。 用法:if(confirm("确定要清空数据吗?")){document.main.text1....原创 2017-04-30 11:30:03 · 9190 阅读 · 0 评论 -
数组Array浅拷贝深拷贝方法总结
Javascript创建对象的方法有很多,现在就来列举一下: 1. 使用Object构造函数来创建一个对象,下面代码创建了一个person对象,并用两种方式打印出了Name的属性值。 var person = new Object(); person.name="kevin"; person.age=31; alert(person.name); alert(per原创 2019-08-04 18:19:32 · 4002 阅读 · 1 评论 -
javascript清除浏览器缓存的方法
浏览器缓存,有时候我们需要他,因为他可以提高网站性能和浏览器速度,提高网站性能。但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些错误的数据。像股票类网站实时更新等,这样的网站是不要缓存的,像有的网站很少更新,有缓存还是比较好的。今天主要介绍清除缓存的几种方法。 清理网站缓存的几种方法meta方法//不缓存<META HTTP-EQUIV="pragma" CONTENT="no-cach原创 2017-05-04 22:28:41 · 315 阅读 · 0 评论 -
贴一篇 写好的上下移动排序代码
“` Vue 测试实例 - 菜鸟教程(runoob.com) ul li{ text-decoration: none; height: 30px; list-style:none } ul li span{原创 2017-10-26 17:52:53 · 397 阅读 · 0 评论 -
javascript 控制input只能输入数字并且最多允许两位小数的数字
javascript 控制input只能输入数字并且最多允许两位小数的数字<html lang="en"><head> <meta charset="UTF-8"> <title>JS 控制只能输入数字并且最多允许两位小数点</title></head><body><input type="text" name="je&quo原创 2017-06-17 14:20:00 · 706 阅读 · 0 评论 -
对于快速连续点击操作从而引发的多次执行问题;
//method1: manyClick() { long time = System.currentTimeMillis(); if ( time - lastClickTime < 1000) { return true; } lastClickTime = time;原创 2017-11-07 14:00:39 · 942 阅读 · 0 评论 -
25道核心JavaScript面试题
原文地址:https://www.toptal.com/javascript/interview-questions在多年的程序设计生涯里,我常常面临着各种新的语言,新的工具。但是语言、工具最终也仅仅为工具,最终目的是分析问题,解决问题。虽然常年在一个领域,一种语言里摸爬滚打,可能对语言本身的理解更为深刻,即使是有意识的去系统、全面的学习了解这种语言的,也可能只是当时对语言本身有些了解,时间一长也就原创 2017-05-21 15:16:52 · 991 阅读 · 1 评论 -
javascript中常用的遍历函数
for循环,需要知道数组的长度,才能遍历,let arr =['2','test',true,'HelloWorld']; for (let i = 0; i &lt; arr.length; i++) { console.log(arr[i]); } 2. forEach循环,循环数组中每一个元素并采取操作, 没有返回值,...原创 2017-05-29 16:53:01 · 4599 阅读 · 1 评论 -
JavaScript 原型链运行原理
原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好。不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么。简单粗暴点看原型链吧,想点与代码无关的事,比如人、妖以及人妖。1)人是人他妈生的,妖是妖他妈生的。人和妖都是对象实例,而人他妈和妖他妈就是原型。原型也是对象,叫原型对象。2)人他妈和人他爸啪啪啪能生出一堆人宝宝、妖他妈和妖他爸原创 2017-05-09 16:42:55 · 3061 阅读 · 3 评论