- 博客(74)
- 收藏
- 关注
原创 本地创建的项目托管到git
这里可能会报错,报错为Updates were rejected because a pushed branch tip is behind its remote(更新被拒绝,因为推送的分支提示位于其远程之后),这时需要git pull拉取一下。这里的情况是本地先通过命令在电脑上指定文件夹创建好项目后,需要托管到git上,这里以gitee为例。如果本地先创建好了,可能会有几个文件冲突,先解决好冲突保存。8. 将远程仓库的文件拉到本地项目中。7. 与远程仓库建立连接。
2023-05-28 21:20:43
1003
原创 元素计算距离与event事件对象
元素计算距离与event事件对象元素1. offsetLeft/offsetTop当前元素相对于父元素左边/上边的偏移量。只读属性,父元素不能是static。当前元素如果是fixed定位,返回的是元素与可是窗口的距离。2. style.left/style.top当前元素相对于父元素左边/上边的偏移量。注意offsetLeft/offsetTop与style.left/style.top的区别:offset是只读属性,style.left是可读可写属性;offset返回值是Number类
2022-04-22 17:55:32
615
原创 前后端通信
前后端通信前后端通信就是前端(浏览器)携带数据向服务器发送请求,服务器对前端进行响应并携带数据。前后端通信方式使用浏览器访问页面link、img、script、a、form等HTML标签Ajax和FetchHTTP请求响应的过程HTTP方法get:获取数据post:创建数据put:修改数据delete:删除数据get和post的区别get获取数据,post是创建数据get通过地址在请求头中携带数据,post既可以通过地址也可以通过请求体携带数据get可以被缓存(由于
2022-04-05 13:26:28
1581
原创 算数表达式
算数表达式算数运算符+:两边操作符都是数字才相加,其余情况都是连字符/%隐式类型转换如果参与数学运算的某操作数不是数字类型,会自动将此操作数转为数字类型(本质是在内部调用Number函数将对应的值转换成数字类型)有关IEEE754解决办法:在进行小数运算时,要调用数字的toFixed方法,保留指定的小数位数负数没有开根号,所以为NaN关系表达式关系运算符:关系运算符运算结果是布尔值<=<===!=====!=相等和全
2022-03-27 21:41:55
1211
原创 JS中的this指向
JS中的this指向this指向是由调用方式决定的this在全局作用域:指向windowconsole.log(this); //windowthis在函数作用域普通函数:严格模式下this为undefined,非严格模式this为windowfunction fun(){ console.log(this);}fun(); //window'use strict'function fun(){ console.log(this);}fun(); //undefi
2022-03-27 19:15:35
717
原创 查漏补缺(七)
查漏补缺(七)规范1. 内联元素不能包含块级元素;2. 块级元素可以包含内联元素或某些块级元素;3. p标签不能包含任何块级元素,包括自身;4. a标签可以包含任何元素,但不能包含自身;5. h1、h2、h3、h4、h5、h6、p、dt不能包含块级元素;6. h5的新标签是footer,不是foot;7. h5标签有main标签将渲染阶段的开销转嫁到计算阶段之上。使用多个分层的 Canvas 绘制复杂场景。不要频繁设置绘图上下文的 font 属性。不在动画中使用 putImageD
2022-03-26 23:19:27
1474
原创 查漏补缺(六)
查漏补缺(六)重排重绘重排(relayout/reflow),也叫回流,重排一定引起重绘重排引起重排的操作:页面首次渲染。浏览器窗口大小发生改变。元素尺寸或位置发生改变。元素内容变化(文字数量或图片大小等等)。元素字体大小变化。添加或者删除可见的DOM元素。激活CSS伪类(例如::hover)。设置style属性查询某些属性或调用某些方法。注意:translate不会引起重排,因为translate 会为对应 DOM 节点生成新的图层(也叫开启硬件加速),不会影响到原来
2022-03-26 21:46:53
1170
原创 JS实现私有属性
JS实现私有属性基于闭包function P(name){ var _name = name; this.getName=function(){ return _name; } }var p = new P("xxx");console.log(p._name); //undefinedconsole.log(p.getName()); //xxx
2022-03-25 14:08:27
388
原创 ES6新增方法
ES6新增方法includes()格式:arr.includes(查找值,开始检索的位置)//找到相应值返回true,否则返回false'abc'.includes('a')padStart()和padEnd()格式:str.padStart(字符串总位数,添加相应字符串)/padEnd(字符串总位数,添加字符串)//从前开始补全字符串'x'.padStart(5,'ab') //ababx//从后开始补全字符串'x'.padEnd(5,'ab') //xabab注意:原字
2022-03-20 23:14:08
145
原创 Set与Map
Set与MapSet定义一组无序且不重复的数据集合方法与属性(一)方法add():给Set集合添加数据,只能添加一个值,可以连续使用,如:add(1).add(2))has():判断Set集合是否有这个值,有返回true,没有则返回falsedelete():删除Set集合的某个数据,一次只能删除一个值。删除不存在的数据,什么也不会发生,也不会报错clear():清空Set的数据forEach():遍历Set。s.forEach(function(value,key,set){},
2022-03-20 15:14:19
119
原创 查漏补缺(九)---程序篇
函数题目:输入一个字符串,返回该字符串出现最多的字母function strMax(str){ let obj={}; for(let i=0;i<str.length;i++){ let k = str.charAt(i); if(obj[k]){ obj[k]++; }else{ obj[k]=1; } } let a = 0; let temp = null; for(let j in obj){ if(obj[j]>a){ a=o
2022-03-18 21:38:37
75
原创 查漏补缺(五)
查漏补缺(五)box-sizing属性适用场景:.wrapper{ width: 300px; height: 200px;}.wrapper div{ float: left; width: 50%; padding: 10px; //两个盒子浮动,width各占一半,但是由于有padding,子容器的宽度已经超出父容器的一半,此时子容器会折行 //box-sizing: content-box; //使用border-box属性自动调整 box-sizing: border-
2022-02-21 23:16:54
319
原创 前端本地存储
前端的存储分类localStorage;sessionStorage;cookie;indexDB;webSQLcookiecookie的基本用法写入cookiedocument.cookie = 'username=xxx';document.cookie = 'userage=18';//不能同时设置,只能一个一个设置获取cookieconsole.log(document.cookie); //得到所有cookie,没个以“: ”分隔cookie的属性
2022-02-21 17:12:40
681
原创 查漏补缺(三)
隐式类型转换符号转换结果-、*、/、%、++、–将字符串转换为数字+将数字转换为字符串console.log("A"- "B"+"2") //NaN2//"A"- "B":用Number函数转换为数值,其结果为NaN,在减法操作中,如果有一个是NaN,则结果是NaN一元加减操作符类型结果数字不变(如果数字第一位是0,转换后去掉0)布尔类型true变为1,false变为0null0undefinedNaN字符串
2021-09-11 22:02:25
173
原创 查漏补缺(二)
浏览器内核内核浏览器TridentIEGeckoFirefoxWebkit(以前)、Blink(现在)ChromePrestoOperajQuery查找元素siblings:找到所有元素的同辈元素next:找到被选元素的下一个同胞元素find:找到被选元素的所有后代元素eq(index):选取带有指定索引值的元素a标签四个伪类的顺序link、visited、hover、active(love hate原则)数组方法push():数组
2021-09-11 08:37:38
88
转载 颜色字符串转换
颜色字符串转换题目:将 rgb 颜色字符串转换为十六进制的形式,如 rgb(255, 255, 255) 转为 #ffffffrgb 中每个 , 后面的空格数量不固定十六进制表达式使用六位小写字母如果输入不符合 rgb 格式,返回原始输入解答:function rgb2hex(sRGB) { var reg = /rgb\((\d+),\s*(\d+),\s*(\d+)\)/; var arr = sRGB.match((reg)); if(!arr){
2021-06-17 15:45:45
654
原创 邮箱字符串判断
邮箱字符串判断题目:判断输入是否是正确的邮箱格式,输出true表示格式正确解答:function isAvailableEmail(sEmail) {//([\w+\.])+表示多个字母、下划线、数字、点 var reg = /^([\w+\.])+@\w+([.]\w+)+$/;//或者// /^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/ return reg.test(sEmail);}知
2021-06-17 13:53:38
725
原创 统计字符串中每个字符出现的次数
统计字符串中每个字符出现的次数题目:统计一个字符串中每个字符出现的次数,并返回出现次数最多的字母以及相应次数解答:利用reduce函数,将每个字符看成一个空箱子,遍历到就把值传到空箱子中,最后判断出空箱子里有多少var str="helloworld";var arr=str.split("");var result=arr.reduce( function(prev,elem){//到这个数时为这个数添加1次 if(prev[elem]===undefined){
2021-06-17 10:45:05
2572
原创 实现对象深拷贝
对象深拷贝function deepClone(o){ if(Array.isArray(o)){ var result = []; for(var i=0;i<o.length;i++){ result.push(deepClone(o[i])); } }else if(typeof o == 'object'){
2021-06-15 17:16:58
128
原创 JS创建对象的方式
JS创建对象的方式JS创建对象一共有3种方式,分别为:用{}直接创建var obj={ 属性名:值, 方法:function(){}}用new创建var obj = new Object();obj.属性名=值;obj.方法=function(){};构造函数的方式创建function obj(形参1,形参2,...){ this.形参1=实参1; this.形参2=实参2; this.方法=function(){};}问题:怎么创建一个对象?知识点:面
2021-06-10 14:11:00
77
转载 时间格式化输出
时间格式化输出题目:输入:formatDate(new Date(1409894060000), ‘yyyy-MM-dd HH:mm:ss 星期w’)输出:2014-09-05 13:14:20 星期五解答:function formatDate(date, format) { var year = date.getFullYear(); var month = date.getMonth() + 1; var day = date.getDate(); var hour = date.g
2021-06-09 15:41:35
147
转载 获取字符串的长度
获取字符串的长度题目:如果第二个参数 bUnicode255For1 === true,则所有字符长度为 1否则如果字符 Unicode 编码 > 255 则长度为 2解答:function strLength(s, bUnicode255For1) { if(bUnicode255For1===true){ return s.length; }else{ let len = 0; for(let i=0; i<s.len
2021-06-09 14:01:01
225
转载 斐波那契数列
斐波那契数列题目:用 JavaScript 实现斐波那契数列函数,返回第n个斐波那契数f(n) = f(n-1)+f(n-2)。 f(1) = 1, f(2) = 1 等解答:function fib(count) {//参数判断 var count = parseInt(count); if (isNaN(count) || count <= 0) { return 0; } function f(count) { if (count <= 2) { retur
2021-06-08 17:12:31
72
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人