javascript
蓝色清晨_
不经一番寒彻骨,怎得梅花扑鼻香。
展开
-
JS常用工具函数
//获取随机布尔值const randomBoolean = () => Math.random() >= 0.5;randomBoolean()//反转字符串const reverseStr = (str) => str.split('').reverse().join('');reverseStr("hello")//数组去重const removeDuplicates = (arr) => [...new Set(arr)];removeDuplicates([原创 2022-03-09 10:45:25 · 244 阅读 · 0 评论 -
阶乘问题的解决方案
//使用递归函数实现阶乘问题 function factorial(num){ if(num<=1){ return 1; }else{ return num*factorial(num-1) } } console.log(factorial(5));//120 //在函数有名字,而且名字以后也不会变的情况下的情况下,这样定义没有问题。这样写的第一个问题是: ...原创 2021-07-06 14:18:36 · 310 阅读 · 0 评论 -
创建函数的两种方式
定义函数的方式有两种:一种函数声明,另一种是函数表达式。函数声明的语法是这样的:function functionName(arg0,arg1,arg2){ //函数体}关于函数声明,它的一个重要特征是函数声明提升,意思是在执行代码之前会先读取函数声明,这意味着可以把函数声明放在调用它的语句后面。//不会抛出错误,因为代码执行之前会先读取函数声明sayHi();function sayHi() { alert("Hi")}这个例子不会抛出错误,因为代码执行之前会先读取函原创 2021-06-23 10:15:01 · 1319 阅读 · 1 评论 -
原型模式的优缺点
function Person() {}Person.prototype = { constructor: Person, name: "LiBai", age: 60, job: "诗人", friends: ["杜甫", "白居易"], sayName: function() { console.log(this.name) }};var person1 = new Person();var person2 = new原创 2021-06-11 18:24:28 · 636 阅读 · 0 评论 -
构造函数优缺点分析
构造函数优缺点分析function Student(name, age) { this.name = name; this.age = age; this.sayName = function() { console.log(this.name); }}function Fruit(name, color) { this.name = name; this.color = color; this.sayName = functi原创 2021-06-11 18:21:02 · 630 阅读 · 0 评论 -
工厂模式优缺点分析
工厂模式优缺点分析function createPerson(name, age, sex) { var p = new Object(); p.name = name; p.age = age; p.sex = sex; p.sayName = function() { console.log("我的名字是:" + this.name); } return p;}优点:能够复用缺点:1.无法识别对象类型; 2.每个对象都有自原创 2021-06-11 18:19:00 · 1241 阅读 · 0 评论 -
创建对象的五种常见方法
一、字面量var per1 = { name: "张三", age: 30, sex: "男", sayName: function() { console.log("我的名字是:" + this.name); }}二、工厂模式function CreatePerson(name, age, sex) { var p = new Object(); p.name = name; p.age = age; p.s原创 2021-06-11 18:12:53 · 139 阅读 · 0 评论 -
提取字符串的方法有哪些
有三种方法可以提取字符串的一部分。01、Substr该 substr(start, length) 方法提取字符串的一部分,从指定的索引处开始,并返回指定数量的字符。const quote = "Winter is coming"; const part1 = quote.substr(0, 6); console.log(part1);//Winter const part2 = quote.substr(10, 6);console.log(part2); //coming 请注原创 2021-06-11 09:54:06 · 2391 阅读 · 0 评论 -
类数组
什么是类数组长的像数组的对象,类数组又叫伪数组类数组和数组的区别:1.都有length属性2.都可以for循环遍历,有的类数组还可以通过for of遍历3.类数组不具备数组的原型方法,不可以调用相关数组方法(如,push、slice、concat…)常见的类数组1.函数的参数 arguments2.通过getElementsByTagName,getElementsByClassName,getElementsByName等方法获取的dom列表(也叫HTML Collection)3.通过原创 2021-03-09 15:20:48 · 3020 阅读 · 0 评论 -
给JS对象添加属性和方法
方式一:定义对象时,直接添加属性和方法 function Person(name,age,sex){ this.name = name; this.age = age; this.sex = sex; this.code = function(){ console.log(this.name + "is coding");原创 2021-03-04 09:50:30 · 7387 阅读 · 2 评论 -
html5自带缓存系统
//html5自带缓存系统var CACHE_UTIL = { setItem: function (type, key, value) { if (type === "session") { this.setSessionItem(key, value); } else if (type === "local") { this.setLocalItem(key, value); } },原创 2020-06-18 16:39:44 · 133 阅读 · 0 评论 -
缓动动画-回到顶部
封装缓动动画 <div id="scrollTop"> <input type="button" value="回到顶部"></div> <h1> 等比例靠近理论 等比例靠近理论上最终只会无穷靠近,并不会真正的相等,也就是动画永远没有结束的时候,所以说需要做一个临界判断,也就是距离小到一定数目的时候,直接等于目标值,并终止动画。例如,上面的返回顶部,就是当距离顶部...转载 2020-06-03 13:29:57 · 490 阅读 · 0 评论 -
javascript创建不可变对象的方法
不可变对象:对象一经创建就不能通过任何方式进行修改;即:不能添加新属性,不能修改已有属性,不能删除已有属性,不能修改已有属性的可枚举性、可配置性、可写性,也就是说这个对象永远是不可变的。本文讲解通过三种方式创建不可变对象:定义一个对象: const myTesla = { maxSpeed : 155, batteryLife :...原创 2020-03-30 12:08:12 · 738 阅读 · 0 评论 -
web 开发中 405报错
在web开发中有以下几种情况会出现 405的错误;1 在前端的请求方式与后台的不匹配:例如后台通过post方式,而你在前端用get方式则会出现405的错误。这样只要让他们保持一致就不会报错。2 在前端提交的请求参数与后端不一致:在很多时候我们会在请求路径后面拼接几个参数,一旦我们拼接的参数与前端控制器中所要接受的参数不一致(名称不一致或者数目不一致)同样也会报405的错误。3 请求路...原创 2019-10-28 22:14:49 · 5726 阅读 · 0 评论 -
原生JS获取样式注意事项
通过document.getElementById( element ).style.xxx可以获取元素的样式信息,但是对于通过clss属性引用的外部样式表就获取不到了,如下面的例子: <html lang="en"><head> <meta charset="UTF-8"> <title>Document</tit原创 2018-04-11 22:41:55 · 493 阅读 · 0 评论 -
继承方法汇总
原型链继承借用构造函数组合继承原型式继承寄生式继承寄生组合式继承原创 2018-05-18 10:18:29 · 114 阅读 · 0 评论 -
vue小练习
创建一个Vue实例 所有的Vue组件都是Vue实例,并且接受相同的选项对象 (一些根实例特有的选项除外)。var vm=new Vue({ // 选项});我们的数据对象var data={a:1};该对象被加入到一个Vue实例中var vm=new Vue({ data:data});获得这个实例上的属性,并返回源数据中对应的字段...原创 2018-06-29 14:39:27 · 711 阅读 · 0 评论 -
JSON字符串和对象之间的相互转换
一:字符串转换为对象:使用JSON.parse()方法 var str = '{ "name": "leiming", "sex": "man" }'; var newstr = JSON.parse(str); console.log(newstr); console.log(typeof(newstr));//object二原创 2018-06-19 18:09:02 · 284 阅读 · 0 评论 -
常用Math对象方法
常用Math对象方法:1. Math.abs();返回给定数值的绝对值var a=Math.abs(-6.66);console.log(a);//6.66var b=Math.abs(+(-0.23));console.log(b);//0.23var c=Math.abs(-(6.35));console.log(c);//6.35var d=Math.abs(-(+4...原创 2018-06-20 13:22:26 · 2510 阅读 · 0 评论 -
函数参数
javascript函数对参数的值没有进行任何的检查。javascript函数的参数与大多数其他语言的函数参数有所不同。函数不介意传进来多少个参数,也不在乎传进来的参数是什么数据类型。甚至可以不传参数。arguments:参数在javascript函数中,并未指定函数形参的类型;在函数调用时也未对传入的实参做任何的类型检查。实际上,javascript函数调用不检查传入形参的个数。请...原创 2019-05-15 15:39:58 · 581 阅读 · 0 评论 -
面向对象-原型完善-constructor(掌握)
constructor的主要作用是:告诉我们当前对象是由哪个构造函数产生的。创建一个构造函数 Person function Person(){ }创建一个实例对象 p var p = new Person(); console.log(p);由构造函数实例化了一个对象p,打印出的对象p包含了_proto_属性,及从_proto_中可以访问到const...原创 2019-05-22 00:33:09 · 447 阅读 · 0 评论 -
JavaScript内置对象之Date
JavaScript提供了内部(或”内置”)对象。它们是Array、Boolean、 Date、 Error、 Function、 Global、 JSON、 Math、 Number、 Object、 RegExp 和String 共12个常用对象。Date对象 Date对象用于处理日期和时间。语法var myDate = new Date();注释:Date对象会自动把当...原创 2018-04-13 09:58:23 · 184 阅读 · 0 评论 -
JavaScript内置对象之Boolean
JavaScript提供了内部(或”内置”)对象。它们是Array、Boolean、 Date、 Error、 Function、 Global、 JSON、 Math、 Number、 Object、 RegExp 和String 共12个常用对象。Boolean对象Boolean对象表示两个值:”true” 或 “false”。语法:new Boolean(valu...原创 2018-04-13 09:43:16 · 253 阅读 · 0 评论 -
创建一个多维数组(一个数组的数组)
<script> // 创建一个多维数组 //设置数组长度 var arrLength = 3; //创建数组 var multiArray = new Array(arrLength); // console.log(multiArray); ...原创 2018-04-06 11:31:09 · 2029 阅读 · 0 评论 -
JavaScript内置对象之Array
JavaScript提供了内部(或”内置”)对象。它们是Array、Boolean、 Date、 Error、 Function、 Global、 JSON、 Math、 Number、 Object、 RegExp 和String 共12个常用对象。Array对象Array 对象用于在单个的变量中存储多个值 语法arrayObj = new Array();array...原创 2018-04-12 10:31:51 · 225 阅读 · 0 评论 -
JavaScript前端实战项目动画实例:动画
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> #square{ wi原创 2018-04-11 23:28:06 · 1518 阅读 · 0 评论 -
js+css让背景图片动起来
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>css+js让背景图片动起来</title> <style> *{ ma原创 2018-04-17 14:49:07 · 9176 阅读 · 1 评论 -
原生js实现购物车相关功能
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>实现购物车的相关功能</title> <style> *{ margin原创 2018-04-17 14:46:37 · 343 阅读 · 0 评论 -
实现复选框的多选功能
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>管理员列表</title> <style> *{ margin:0;原创 2018-04-17 14:44:42 · 2428 阅读 · 0 评论 -
无间歇文字滚动
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta原创 2018-04-17 14:29:34 · 162 阅读 · 0 评论 -
如何用js实现点击图片切换为另一图片,再次点击恢复到原图片
如何用js实现点击图片切换为另一图片,再次点击恢复到原图片<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>如何用js实现点击图片切换为另一图片,再次点击恢复到原图片</title>&am原创 2018-04-11 13:53:25 · 37868 阅读 · 8 评论 -
JavaScript内置对象之Math
JavaScript提供了内部(或”内置”)对象。它们是Array、Boolean、 Date、 Error、 Function、 Global、 JSON、 Math、 Number、 Object、 RegExp 和String 共12个常用对象。Math对象Math对象用于执行数学任务。使用Math的属性和方法的语法:var pi_value = Math.PI;v...原创 2018-04-13 10:14:43 · 458 阅读 · 0 评论 -
JavaScript内置对象之Number
JavaScript提供了内部(或”内置”)对象。它们是Array、Boolean、 Date、 Error、 Function、 Global、 JSON、 Math、 Number、 Object、 RegExp 和String 共12个常用对象。Number对象Number对象是原始数值的包装对象。语法var myNum = new Number(value);va...原创 2018-04-13 10:28:17 · 223 阅读 · 0 评论 -
封装函数 用于获取元素的属性值
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> #content{ w原创 2018-04-19 23:45:06 · 341 阅读 · 0 评论 -
封装函数 为目标元素添加class属性
<div id="changeName" class="big red"></div><button onclick="addClass('changeName','round')">Add a className</button><script> // 封装addClass函数 为目标元素添加原创 2018-04-19 23:36:04 · 364 阅读 · 0 评论 -
封装函数 用于删除数组中的奇数
//删除数组中的奇数 method 1function deleteOdd(arr){ var newArray = []; for(var i=0;i<arr.length;i++){ if(arr[i]%2==0){ newArray.push(arr[i]); } } return newArra...原创 2018-04-19 23:21:56 · 868 阅读 · 0 评论 -
封装函数 检测数组中是否含有某个值
//封装一个函数 用于检测数组中是否含有某个值 function findValue(item,arr){ for(var i=0;i<arr.length;i++){ if(arr[i]==item){ return true; }...原创 2018-04-19 23:17:26 · 1102 阅读 · 2 评论 -
封装求和函数
//封装一个求和函数 function sum(arr){ var total = 0; for (var i=0;i<arr.length;i++){ total += arr[i]; } return total; } ...原创 2018-04-19 23:14:25 · 1030 阅读 · 0 评论 -
javascript 内置对象之 Error
JavaScript提供了内部(或”内置”)对象。它们是Array、Boolean、 Date、 Error、 Function、 Global、 JSON、 Math、 Number、 Object、 RegExp 和String 共12个常用对象。一、概念JS中的六种错误类型1. SyntaxError:语法错误 解析代码时发生的语法错误,比如变量名错误、缺少括号等。...原创 2018-04-13 18:07:29 · 697 阅读 · 0 评论 -
JavaScript 内置对象之事件Events
事件通常与函数配合使用,这样就可以通过发生的事件来驱动函数执行。事件句柄列表下面是一个属性列表,这些属性可插入HTML标签来定义事件动作。 onabort:图片加载被中断onblur: 元素市区焦点onchange: 用户改变域的内容onclick: 鼠标点击某个对象ondblclick: 鼠标双击某个对象onerror: 加载文档或图像时发生错误onfocu...原创 2018-04-13 16:54:07 · 1097 阅读 · 0 评论