- 博客(31)
- 收藏
- 关注
原创 JS:[] + {}和{} + []的结果和原因
console.log([] + {}) // "[object Object]"console.log({} + []) // 0顺序不一样,产生的结果不一致问题,是由于语法解析和类型转换引起的。当遇到[] + {}时,进行+运算,[]被隐式转换"",{}被转化为[object Object],所以结果为"[object Object]",当遇到{} + []时,会把{}当成代码块来解析,而后面的+[],被当成显式转化为number类型,结果为0。...
2021-05-17 21:02:46
267
原创 call,apply,bind的用途
call和apply的区别在前端日常工作中,this的指向是一个飘忽不定但是又要掌握的知识。在ECMAscript3中,给Fucntion.protptype定义了call和apply方法,用来改变this的指向,都接收两个参数,第一个参数都为函数体内this对象的指向,call是从第二个参数开始,每个参数给以此传入,如Fucntion.protptype.call(obj,a,b,c),apply的第二个参数为一个数组或者类数组,apply会将数组或类数组元素作为参数传递给被调用的函数,如Fucn
2021-03-11 12:29:50
384
原创 JS判断对象属性是否在原型中
object.hasOwnProperty:判断属性是否存在于实例中,存在实例中返回true,例如:function Student () {}Student.prototype.name = "张三"let student1 = new Student();console.log(student1.name) // 张三console.log(student1.hasOwnProperty("name")) // falsestudent1.name = "李四"console.lo
2021-02-24 14:05:41
1097
原创 表单新增一条数据和编辑数据弹窗问题
最近在写项目的时候,遇到一个问题,感觉场景挺常见的,就把它记录下来吧~如上图所示,点击新建数据和编辑,用的时同一个弹出框,这时候就会出现一个问题,当弹出框弹出时,要判断点击的是新增还是编辑,如果是新建,则数据为空(placeholder),如果是编辑,表单中要显示这条数据的信息。这在这里我用来是通过type来判断是新增还是编辑的,此时出现了一个问题,当我先点新增,再...
2019-11-11 17:07:23
1708
原创 zepto源码之html()方法
要了解html()方法的实现,首先了解它的用法和参数。定义和用法html() 方法设置或返回被选元素的内容(innerHTML)。当该方法用于返回内容时,则返回第一个匹配元素的内容。当该方法用于设置内容时,则重写所有匹配元素的内容。返回内容:$(selector).html()设置内容:$(selector).html(content)使用函数设置内容:$(...
2019-10-24 10:22:43
647
转载 同步、异步的基本概念
同步、异步有什么区别在进行网络编程时,我们通常会看到同步、异步、阻塞、非阻塞四种调用方式以及他们的组合。其中同步方式、异步方式主要是由客户端(client)控制的,具体如下:同步(Sync)所谓同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执行后续操作。根据这个定义,Java中所有方法都是同步调用,应为必须要等到结果后才会继续执行。我们在说同步、异步的时...
2018-12-10 21:17:14
592
原创 网页的布局方式
1、固定宽度布局:为网页设置一个固定的宽度,通常以px做为长度单位,常见于PC端网页。 2、流式布局:为网页设置一个相对的宽度,通常以百分比做为长度单位。 3、栅格化布局:将网页宽度人为的划分成均等的长度,然后排版布局时则以这些均等的长度做为度量单位,通常利用百分比做为长度单位来划分成均等的长度。 4、响应式布局:通过检测设备信息,决定网页布局方式,即用户如果采用不同的设备...
2018-11-26 19:56:02
413
原创 before,after,首个字符,首行和选中样式等伪元素的使用
伪元素种类有很多,这里说::before,::after,first-letter,first-line,::selection这几个。1.::before:可以在元素的内容前面插入新内容。div::before{ /*必须添加content属性,否则后期不可见*/ content: ""; /*默认是行级元素,如果想设置宽高,就必须转换为块级元素,可以使用dis...
2018-11-15 20:29:28
684
原创 H5 WEB存储实现——登陆时记住用户名或密码
此处用保存用户名为例,因为我们在外登陆时保存用户名居多。此处需用到localStorage和sessionStorage两种存储方式。sessionStorage 大小 5M 生命周期 -- 关闭当前页面就消失 活动范围 -- 当前页面 存储位置 -- 当前页面的内存中 API 设置- window.sessionStorage.se...
2018-11-14 16:36:56
5492
原创 H5实现上传文件并即时预览
此处上传一张图片为例子。当我们用<img src="../images/l1.jpg">直接展示时,src请求的是外部文件,一般来说是服务器资源。意味着它需要向服务器发送请求,它占用服务器资源。现在H5提供了一种文件读取,如下:<input type="file" name="myFile" id="myFile" onchange="getFileContent
2018-11-14 14:22:02
6272
原创 JS实现斐波那契数列
1.原生JS实现:function getfib(n){ var n1=1; var n2=1; if(n==1 || n==2){ return 1; } var n3; for(var i=3;i<=n;i++){ n3=n1+n2; n1=n2; n2=n3; } retur...
2018-11-08 20:57:34
379
原创 实例对象属性及方法的搜索原则
每当代码读取某个实例对象的某个属性或方法时:1.实例对象的属性的查找: 先在创建自身的构造函数中查找,找到即返回。 如果在创建自身的构造函数中没有找的,则沿着原型链向上查找,找到即返回。 如果一直到原型链的末端还没有找到,则返回 undefined 。 2.实例对象方法的查找: 同样会先在创建自身的构造函数的原型中查找,找到即返回...
2018-11-05 21:45:06
484
原创 构造函数、原型对象和实例对象的关系
JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象。这个对象的所有属性和方法,都会被构造函数的所拥有。这也就意味着,我们可以把所有对象实例需要共享的属性和方法直接定义在 prototype 对象上。function Person (name, age) { this.name = name; this.age = age;}con...
2018-11-05 21:36:59
789
原创 JS数组去重(去掉数组中重复的元素)
var arr = ['c', 'a', 'z', 'a', 'x', 'a', 'x', 'c', 'b'];var newArr=[];for(var i=0;i<arr.length;i++){ if(newArr.indexOf(arr[i]) == -1){ newArr.push(arr[i]); }}console.log(newArr...
2018-10-22 18:06:40
3192
原创 创建元素的三种方式
document.write()document.write('新设置的内容<p>标签也可以生成</p>');innerHTMLvar box = document.getElementById('box');box.innerHTML = '新内容<p>新标签</p>';document.createElement()v...
2018-10-22 10:15:24
275
1
原创 JS中用new创建对象及new的作用
// 构造函数 function Student(name, num, age) { this.name = name; this.num = num; this.age = age; } var s2 = new Student("xiaoming", 5...
2018-10-12 18:45:53
4194
原创 css盒子阴影
语法: box-shadow:水平阴影 垂直阴影 模糊距离(虚实) 阴影尺寸(影子大小) 阴影颜色 内/外阴影; 前两个属性是必须写的。其余的可以省略。 外阴影 (outset) 是默认的 但是不能写 想要内阴影可以写 inset。 ...
2018-10-08 21:43:41
297
原创 css圆角边框
语法: border-radius:length; 其中每一个值可以为 数值或百分比的形式。 技巧: 让一个正方形 变成圆圈 border-radius: 50%;
2018-10-08 21:19:23
899
原创 js数据类型转换
数据类型转换表单 prompt 获取过来的数据默认是字符型的,此时就不能直接简单的进行加法运算, 此时需要转换。就是把一种数据类型的变量转换成另外一种数据类型。通过调用系统函数进行类型转换,主要分3类:转 字符串、转 数值、转 布尔值1 转换为字符串方式 说明 案例 toString() 把变量转成字符串 var num= 1; alert(num....
2018-09-29 15:31:58
244
原创 js的基本输入输出语句
1. alert() 显示消息消息弹出窗:在 JS 中可以使用浏览器提供的 alert 函数 显示消息语法如下: var usrMsg = "请问有空吗?" alert(usrMsg);2. prompt(info) 获取输入 消息输入窗:在 JS 中可以使用浏览器提供的 prompt 函数从键盘接收用户的输入 ...
2018-09-29 09:49:15
39777
3
原创 js中变量属于那种类型?
在代码运行时,由 JS引擎 根据 = 右边 变量值的数据类型 来判断的。var age = 10; // 这是一个数值型var choose = true ; //这是一个布尔值var time = '2018年'; //这是一个字符型运行完毕之后, 变量就确定了数据类型。JavaScript是弱数据类型,变量是没有固定数据类型的, 总之,你给变量一个什么值,它就是什么数据类...
2018-09-29 08:52:14
618
原创 css的三大特性
1 CSS层叠性 概念:所谓层叠性是指多种CSS样式的叠加。是浏览器处理冲突的一个能力,如果一个属性通过两个相同选择器设置到同一个元素上,那么这个时候一个属性就会将另一个属性层叠掉。 原则: 样式冲突,遵循的原则是就近原则。 那个样式离着结构近,就执行那个样式。 样式不冲突,不会层叠 2 CSS继承性 概念:子标签会继承父标签的某些样式,如...
2018-09-27 21:26:53
207
原创 css 背景
CSS 背景(background)1 背景颜色(color) 语法:background-color:颜色值; 默认的值是 transparent 透明的 2 背景图片(image) 语法:background-image : none | url (url) 参数 作用 none 无背景图(默认的) url 使用绝对或相对地址指定背景图像...
2018-09-27 21:15:09
220
原创 标签的显示模式
1. 什么是标签显示模式什么是标签的显示模式?标签以什么方式进行显示,比如div 自己占一行, 比如span 一行可以放很多个作用:我们网页的标签非常多,再不同地方会用到不同类型的标签,以便更好的完成我们的网页。 2.1 块级元素(block-level)例:常见的块元素有<h1>~<h6>、<p>、<div>、<ul&...
2018-09-16 09:57:18
587
原创 css复合选择器及总结
1. 后代选择器概念:后代选择器又称为包含选择器。作用:用来选择元素或元素组的子孙后代。 其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔,先写父亲爷爷,在写儿子孙子。 格式:父级 子级{属性:属性值;属性:属性值;} 语法:.class h3{color:red;font-size:16px;} 当标签发生嵌套时,内层标签就成为外层标签...
2018-09-16 09:14:55
12943
原创 css中margin和padding属性取不同个数(1,2,3,4)的意义
以margin为例(padding同理)margin取值为1个时,如margin:10px ;此时10px代表上、下、左、右外边距。margin取值为2个时,如margin:5px 10px;此时5px代表上、下外边距,10px代表左、右外边距。margin取值为3个时,如margin:2px 6px 9px;此时2px代表上外边距,6px代表左、右外边距,9px代表下外边距。...
2018-09-14 08:45:49
1169
原创 CSS外观属性
1 color:文本颜色作用:color属性用于定义文本的颜色,其取值方式有如下3种:表示表示 属性值 预定义的颜色值 red,green,blue,还有我们的御用色 pink 十六进制 #FF0000,#FF6600,#29D794 RGB代码 rgb(255,0,0)或rgb(100%,0%,0%) 注意:我们实际工作中, 用 16进制的写法是最...
2018-09-12 09:00:32
503
原创 css字体(font)样式总结
1.font-size:设置字体大小写法:p { font-size:20px; } PS:谷歌浏览器默认的文字大小为16px,但是不同浏览器可能默认显示的字号大小不一致,我们尽量给一个明确值大小,不要默认大小。一般给body指定整个页面文字的大小 2.font-family:设置字体写法:p{ font-family:"微软雅黑";} 也...
2018-09-06 23:07:47
4867
原创 简单描述css的四种基础选择器
选择器 作用 缺点 使用情况 用法 标签选择器 可以选出所有相同的标签,比如p 不能差异化选择 较多 p { color:red;} 类选择器 可以选出1个或者多个标签 可以根据需求选择 非常多 .nav { color: red; } id选择器 一次只能选择器1个标签 只能使用一次 不推荐使用...
2018-09-06 22:13:15
1544
原创 css三种引入方式及格式
一:行内式(内联样式)其基本语法格式如下:<标签名 style="属性1:属性值1; 属性2:属性值2; 属性3:属性值3;"> 内容 </标签名如:<div style="color: red; font-size: 12px;">行内式</div> 二:内部样式表(内嵌样式表)其基本语法格式如下:<head>
2018-09-06 21:21:16
1261
原创 for(int i : index)
class Telephone{ public static void main(String[] args) { int[] arr = new int[] { 8, 2, 1, 0, 3 }; int[] index = new int[] { 2, 0, 3, 2, 4, 0, 1, 3, 2, 3, 3 }; String tel =
2017-12-27 21:14:32
9302
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人