IOS开发学习路线~ 1. 学习视频地址:https://www.bilibili.com/video/BV1NJ411T78u?t=122. 大佬教程 :https://github.com/iOS-Swift-Developers/Swift3.练手项目:https://github.com/jiachenmu/Swift-BanTang2.
学习一下引用数据类型拷贝 对于引用数据类型,细分可以分为以下三个方面赋值 浅拷贝 深拷贝目录赋值:浅拷贝Object.assign()展开运算符...Array.prototype.slice()深拷贝总结赋值:只是改变指针的指向,例如,引用数据类型的赋值是对象保存在栈种的赋值,这样的化两个变量就都指向同一个对象,因此彼此之间的操作互有影响。举个例子:var a = {};var b = a;a.name = "ls";console.log(a.name); ..
有关闭包问题的个人见解 闭包简单来说就是两个函数嵌套,函数a的内部有个函数b,函数b可以访问函数a内的变量,那么函数b就是闭包。举个例子:function A(){ let a = 0; window.B = function (){ console.log(a) }}A();B(); //0闭包存在的意义就是让我们能够间接的访问函数内部变量。之前面试遇到的一个问题,循环中用闭包解决var 定义函数问题for (var i = 0 ; i < 10.
JS模块化开发 JS模块化开发总结文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试等等......开发者不得不使用软件工程的方法,管理网页的业务逻辑。Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块。但是,ES6以前不是一种模块化编程语言,它不支持"类"(class),更遑论"模块"(module
面试题:不知宽高的元素居中方法集合 方法1:反向移动position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%); 方法2:flex布局display:flex;align-items:center;justify-content:center; 方法3:四向定位 positi...
面试题:有关js内存泄漏问题总汇~ 内存泄漏?官方解释:内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。通俗点就是指由于疏忽或者错误造成程序未能释放已经不再使用的内存,不再用到的内存却没有及时释放,从而造成内存上的浪费。避免内存泄漏?在局部作用域中,等函数执行完毕,变量就没有存在的必要了,垃圾回收机制很亏地做出判断并且回收,但是对于全局变量,很难判断什么时候不用这些变量,无法正常回收;所以,尽量少使用全局变量。在使用闭包的
面试官:怎样实现左右元素固定,中间元素自适应的三栏布局?总结8种~ 常见的布局方式有: 浮动布局、Position定位、弹性(flex)布局、table布局、网格(grid)布局。前提是左右宽度(假如左右宽度为100px),整个高度已知(假如高度为500px),中间宽度自适应。1.浮动布局float的实际初衷仅仅使为了实现文字环绕问题。float的感性认知:包裹性: 收缩:元素应用了float后,宽度收缩,紧紧地包裹住内容(即元素的宽度收缩到元素内的内容的宽度大小 坚挺:原来没有高度,但元素应用了float后,元素的高度突然扩展到内容的高度.
Vue入门教程之Vue语法 1.Vue语法<div id="#app"> {{msg}} </div><script src = "vue.js"></script><script> let vm = new Vue({ el:"#app", data:{ msg:"vue", }, methods:{ } })&
Javascript 复习内容——运算符 ++ --a++ 先返回a的值 再执行a=a+1++a 先执行a=a+1 再返回a的值--同理&& ||&&如果两个操作数都不是布尔类型 如果两个值转换成布尔类型都是true 则返回第二个操作数 如果有一个操作数转换成布尔类型是false 则返回这个操作数var b= "qwe" &&"asd" console.log(b) // asd...
CSS3改变滚动条样式 自定义滚动条实现此部分针对webkit内核的浏览器,使用伪类来改变滚动条的默认样式,详情如下:滚动条组成部分1. ::-webkit-scrollbar 滚动条整体部分2. ::-webkit-scrollbar-thumb 滚动条里面的小方块,能向上向下移动(或向左向右移动)3. ::-webkit-scrollbar-track 滚动条的轨道(里面装有Thumb)4. ::-webkit-scrollbar-button 滚动条的轨道的两端按钮,由于通过点击微调小方块的位置。
CSS复习——选择器 派生选择器也叫上下文选择器(CSS1),派生选择器允许你根据文档的上下文关系来确定某个标签的样式。通过合理地使用派生选择器,我们可以使 HTML 代码变得更加整洁。比如,我想规定li标签中的img图像大小li img{ width: 20px; height: 10px;}id选择器比如我要将div元素背景定位红色<div id = "box", name = "aBox">我是一个盒子</div>#div{backgr.
JavaScript实现鼠标滚轮事件——onmousewheel 通过滚轮改变div heightbind()请点击参考之前文章/*** * 滚轮调整div高度 */var box = document.getElementById("box");//为box绑定鼠标滚轮滚动事件/** * 火狐中不适用 需要用DOMMouseScroll绑定滚动事件 * 该事件需要通道addElementListener()事件来绑定 * */box.onmousewheel = function (event) { event = e.
javascript 定时器自定义函数,实现动画——移动元素位置 拿走直接用,兼容IE8及以下getStyle请参考之前文章function move(obj,target,speed,attr,callback) { clearInterval(obj.timer) //判断speed正负 //0-800移动 speed为正 // 800-0 speed为负] //当前位置 var current = parseInt(getStyle(obj, attr)); if (current &g
JavaScript定时器——setInterval() 介绍* 如果希望程程序间隔一段事件执行 可以使用定时调用* 定时器* setInterval()* 定时调用* 参数:* 1. 回调函数,该函数每隔一段时间被调用一次* 2.每次调用间隔的时间 单位毫秒* 返回值* 返回一个number类型的数据* 用来作为定时器的唯一标识详细介绍请参考w3c手册var count = document.getElementsByTagName("h1");var numbe...
JavaScript 常用Browser BOM总结 BOM* BOM 浏览器对象模型* 通过js操作浏览器* 在BOM中为我们提供了一组对象,用来完成对浏览器的操作* BOM对象* window* 代表的使整个浏览器的窗口,同时window也是网页中的全局对象* Navigator* 代表当前浏览器的信息,通过该对象能识别不同浏览器* Location* 代表当前浏览器的地址栏信息,通过Location可以获取地址栏信息,或者操作浏览器跳转页...