- 博客(49)
- 资源 (2)
- 收藏
- 关注
原创 go range使用的注意事项
首先来看下面一段代码是否有问题:package srcimport ( "testing")type A struct { ele1 int ele2 string}func TestRange(t *testing.T) { aSlice := make([]A, 5) for i:=0; i<5; i++ { ...
2018-09-08 15:58:50
1078
1
原创 平行赋值中遇到的变量作用域问题
var a inta, b := 1,2像这样的赋值是允许的,但是当出现如下情况时:var a intfor i:=0; i<3; i++ { a, err := f()}// 在这里得不到for代码块里面的a一不留神,坑就来了。for 代码块里面的a是for代码块的本地变量,而不是for代码库外面的全局变量var a intfor i:=0; i<...
2018-08-18 21:30:34
306
原创 golang 平行赋值的原理(个人理解)
对于golang, 交换两个数很简单,如下这么写就可以了:i, j = j, i等号左边和右边含有多个表达式,这就是平行赋值。 赋值分为两个步骤:计算等号左边的操作数的索引表达式和取址表达式,计算等号右边的表达式。赋值我们来看下面一段代码会输出什么?func main() { i := 1 s := []string{"A", "B", "C"} ...
2018-08-18 17:45:39
2547
原创 Go 用list实现stack和queue
go的container/list 包里面带的list,有在链表头部和尾巴插入元素,和获取头部和尾部元素的操作,因此我们可以用list来实现栈和队列的功能。import ( "container/list" "fmt")func StackTest() { stack := list.New() for i := 0; i < 5; i++ {...
2018-08-13 20:42:57
1885
原创 Go实现while
golang 里面没有while关键字,可以用for+break实现i:=0for { do something if i <= 10 { break; }}与java里面等价的while:int i = 0;while(i<10){// notice there is only < do something...
2018-08-10 21:19:21
32509
1
原创 Go 二维切片初始化
用golang刷题是真的费劲,但是要练语法,还是没办法呀。 这里说一下初始化一个n*n的二维切片:f := make([][]int, n) for i := 0; i < len(matrix); i++ { f[i] = make([]int, n) }其实可以直接用f := [n][n]int建立一个二维数组,但是go的数组类型是带...
2018-08-10 18:00:47
23050
6
原创 govendor 相关命令
首次添加所有外部文件 govendor add +external删除没用的外部文件 govendor remove -unuse再次添加外部文件 govendor add code.byted.org/gopkg/mosaic 如果mosaic是下面还有文件夹 需要再次update一次更新外部文件 govendor update code.byted.org/gopkg/mos...
2018-08-01 21:43:20
1913
原创 go利用defer计算函数执行时间
package mainimport ( "time" "fmt")func a() int { defer b(time.Now()) // 这里不会调用b(), 但是会将当前时间t赋值给b的传入参数 time.Sleep(1 * time.Second) // 其实也不是在这里调用的 return 0 其实是两个语句 1.返回值赋值为0;2.r...
2018-07-09 18:49:12
1289
原创 file的onChange事件的添加
给type为file的input直接添加onChange事件存在一个问题:在上传后一个文件后,事件失效。 原因:上传后一个文件后,元素input会被重构,给之前元素添加的响应事件自然就失效了。 解决方案:给其父元素添加事件监听。 html:&lt;div class="parent"&gt; &lt;input type="file" class="fi
2018-05-22 13:13:25
11838
1
原创 charles提示“SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations”
出现这种情况,charles解析不出path,我们就没法建立映射。具体的解决方案为在proxy中的SSL Proxying setting中钩上Enable SSL Proxying,并且将要解析的host加上。如下图:
2017-12-19 18:54:00
63479
2
转载 python内存管理
对象的内存使用id可以取到python对象的内存地址 以赋值操作为例 python内存管理 > image2017-11-22_15-4-23.png" alt="" style="max-width:none; margin-left:2px; margin-right:2px; vertical-align:text-bottom">可以看到 a 与常量1的地址是一
2017-12-19 18:39:24
306
原创 多张图片的左右切换特效,实现循环切换
一个页面同时要显示多个图片,并且需要实现这多个图片的循环切换。 贴代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"
2017-11-13 22:26:00
8958
1
原创 清空input[type='file']的文本域
file是没有value的概念的,所以不能直接清除file的文本域。现在提供两种方法来解决这个问题。一、先移除,在插入。就是先移除原有的demo里的file控件,然后在插入一个新的file控件。二、利用form的reset方法。form的reset方法可以将已上传的文件删除,但是其他输入也会被清空。我们可以构建一个临时的form表单,将file控件放在这个临时的form表单里,然后在重置这个
2017-10-25 15:12:45
5552
原创 :hover 实际选择的是子元素的原因
先看下面代码的区别.myDiv :hover{//:hover前有空格 background: blue; } .myDiv:hover{//:hover前没有空格 background: blue; }第一种:hover选择的是.myDiv的所有子元素,而第二种选择的是.myDiv本身。 第一种会将.myDiv的所有子元素的背景设为blue; 第二种会将.myDiv
2017-10-24 17:52:15
2096
3
原创 <i></i>为0*0时,显示背景
我们经常用来显示图标,但是i是内联元素,其width和height是根据内容来的,如果没有内容其就为0*0,因而就显示不了背景。 为此,我们需要使用css将内联元素变为块级元素: display:block
2017-10-23 10:01:56
559
原创 js动态添加的按钮,其响应事件的添加
function a(){ var str = "<a class='delete'>删除</a>"; $div.append(str);//如此添加的事件,其click事件是不能绑定的 $('.delete').on('click' function(){ ... });//在此需要重新写一次,相当于给新添加的a绑定click事件}$('.del
2017-10-18 15:01:37
2265
原创 安装numpy遇到的文件不存在问题
安装的过程和网上的差不多,将numpy-1.13.3+mkl-cp36-cp36m-win32.whl文件复制到Python\Scripts下, 然后E:>Python\Scripts\pip3.6 install numpy-1.13.3+mkl-cp36-cp36m-win32.whl,进行安装。 但是莫名奇妙的报Requirement ‘numpy-1.13.3+mkl-cp36-cp36
2017-10-12 20:33:03
3063
原创 python shell命令行中import多层目录下的模块
首先在文件夹中添加init.py文件,即使是空文件也可以,多层文件夹,每层文件夹中都要添加。 比如我要import,a文件夹中,b文件夹下的 c.py 我就需要在a,b文件夹中都添加init.py文件。 然后引入方式:import a.b.c 然后在调用c.py的函数时,直接c.f()是不行的,需要a.b.c.f()。 当然也可以先写 c = a.b.c,然后再c.f()。
2017-10-12 17:25:56
2095
原创 leetcode 152 O(n)解决方案
题目大意:寻找一个子序列,使其乘积达到最大。 解决思路:记f[i]为前i个数能得到的最大乘积。递推公式如下: f[i]=Max(f[i-1],b[i]);b[i]表示含有nums[i]的最大乘积。 为求b[i],构造一个额外数组temp,temp[i]=nums[i]*nums[i-1]….*nums[j]; j=0或者nums[j-1]=0, nums
2017-10-09 21:47:33
927
原创 动态规划求取C(n,m)
先看一个高中概率题:小明在一个M*N的街道上从(0,0)走到(m,n)有几种走法(小明不傻,不绕路)? 数学解法:从(0,0)走到(m,n)一共要走过m+n个街道,其中m个横着的,n个竖着的。转化为m个横和n个竖的排列有多少?这个显然就是C(n,m+n). 动态规划解法: f(m,n)=f(m-1,n)+f(m,n-1);//m,n>0 f(m,n)=f(m-1,n);//m>0,n=0
2017-09-16 13:56:14
1027
原创 LeetCode 62 Unique Paths
题目大意:机器人从一个M*N的矩阵的一点(start)走到另一点(end),只能向下或者向上有几种走法 一看这题,就想起高中学概率时的时候做的一题:小明在一个M*N的街道上从(0,0)走到(m,n)有几种走法(小明不傻,不绕路)? 这不一模一样? 从(0,0)走到(m,n)一共要走过m+n个街道,其中m个横着的,n个竖着的。什么时候走横的什么时候走竖的全看小明心情,所有就有C(m,m+n)
2017-09-12 17:36:06
189
原创 JSP表达式访问类私有成员的理解
在JSP页面中经常会用到表达式来获取数据,如:${param}. 但是在使用中发现一个问题:${user.name},user是User类的一个实例,name是他的私有成员。 照理说,user.name这种直接访问是不会成功的。 但是JSP页面确实能够成功地获取user.name的值,后面了解到servlet在读取时,是去找User类的get函数,如果有getName()这个函数,就能读取出u
2017-09-05 16:20:09
455
原创 清除echarts 实例
clear只是清除画布,而不会清除实例。其会保留点击事件等。 想在同一个dom中画多个实例,肯定需要先销毁前一个,才能画后一个。echarts.init(document.getElementById('echarts')).dispose();//销毁前一个实例var myEcharts = echarts.init(document.getElementById('echarts'));//
2017-07-21 16:18:32
18617
5
原创 datatables报Requested unknown...错误
首先,datatables.net/tn/4问题为什么会出现,原因有两个: 1、传入的data值为空; 2、传入的data数据结构和想要的不一样。 第二种好解决,只要我们把数据类型匹配好就行。但是第一种有一个地方比较坑,datatables在传入值为空的时候是有默认值得,会显示 “No data available in table”. 问题就出现在这里,项目里面有这样一个操作:$('#a
2017-07-20 10:12:56
1100
原创 页面向下滚动一定距离显示固定搜索框
如淘宝首页那样,页面滚动到一定距离时,显示头部的搜索框。 具体代码很简单://屏幕向下走多高的距离,出现little-logo $(window).scroll(function(){ if($(window).scrollTop() > 167){ $('.little-logo').show(); }else{
2017-06-30 17:39:42
4113
1
原创 datatable插件应用于tab切换出现表头错位问题
场景描述:有一个tab切换,共两个页面,每个页面里都有一个table,并且采用了datatable插件。 问题:有一个table在初始化的时候,头部布局混乱。如图: 原因所在:tab切换前,有一个页面的display是none,发现只要原来是block的都没有问题,只要是none就有问题。检查元素发现,datatable有一个div(类名为dataTables_scrollHeadInner
2017-06-14 10:16:46
8919
2
原创 同时上传多个文件问题
需求描述:每件仪器会有附件,而且不止一个。我们需要在上传仪器的时候,提供上传附件的方法。 难点:前端同时保存多个文件比较麻烦而且比较容易出错,但是如果每上传一次,就保存一次数据库,会导致数据库里大量的无用文件(因为用户在上传文件之后不一定会上传此仪器,导致之前存在数据库里的文件变为了无用文件)。 解决方案:采用每上传一次文件就提交一次数据库,但是存入数据库里的文件打上所属用户和是否使用的标签,在
2017-06-06 15:26:22
1112
转载 HTML<button>和<input type="button"> 的区别
一、定义和用法 标签定义的是一个按钮。在 button 元素内部,可以放置文本或图像。这是与使用 input 元素创建的按钮的不同之处。二者相比较, 控件提供了更为强大的功能和更丰富的内容。 与 标签之间的所有内容都是按钮的内容,其中包括任何可接受的正文内容,比如文本或多媒体内容。例如,我们可以在按钮中包括一个图像和相关的文本,用它们在按钮中创建一个吸引人的标记图像。
2017-05-24 15:04:07
472
原创 JSP,include,静态和动态的区别
1.静态导入是将导入页面的代码完全融入,两个页面融合成一个整体Servlet;而动态导入则在Servlet中使用include方法来引入被导入页面的内容。 2.静态导入时,导入页面的编译指令会起作用;而动态导入时,不会起作用,指示插入被导入页面的body内容。使用实例: 静态导入:用于导入一些公共资源,如base标签里面的href等。 动态导入:用于导入一些页面模块,如页面的头部和尾部。 备
2017-05-22 15:05:31
430
原创 base标签和JSP声明变量解决文件相对路径和绝对路径问题
先看需求:同一个项目需要给不同的客户部署,有的客户使用windows,有的客户使用Linux。使用windows的客户,其用户文件是保存在tomcat的相对路径下;使用Linux的客户,其用户文件是保存在一个绝对路径下。 问题:同一个文件的显示,相对路径能够显示,绝对路径也可以显示。 解决方案:采用html的base标签<base href="http://****/**/" />......
2017-05-22 14:25:39
1145
原创 JQ 写带!important 的css样式
如下的写法,CSS不会生效,html也不会显示style$(".test").css("color","red !important");如下写法生效,html会显示:style=“color:red !important”$(".test").css("cssText","color:red !important");分析原因:个人理解,!important修饰是整句CSS代码如“color:re
2017-04-25 11:37:23
1828
原创 data属性在原生JS、jq attr()和jq data()的不同表现。
首先记录一下,data-* 其中*不能为空和不能含有大写字母。然后是如何获取data的值。页面是这么写的:<a href="#" id="a" data-test="123">123</a>1.原生js获取:document.getElementById("a").dataset.test。2.jq attr()获取$("#a").attr("data-test")。3.jq data
2017-03-20 17:19:43
8603
原创 bootstrap-fileinput 删除事件的添加
bootstrap fileinput 的详细应用请参见博文:http://blog.csdn.net/wuwenjinwuwenjin/article/details/49507595 本文,主要补充一下上传的每张图片的删除事件怎么添加。 删除事件的添加,与前端没什么鸟关系,主要是根据后台返回的数据,后台返回的数据必须符合固定的数据格式,才能添加为每张上传的图片。后台返回的数据格式如下:{
2017-02-21 17:53:45
14896
8
原创 jquery.validate file验证jpg图片的坑
之前写的验证:file: { accept: "JPG|PNG" },发现jpg图片一直验证不了,后来发现要这么写:file: { accept: "JPEG|PNG" },这个时候PNG,JPG和JPEG都是接受的,目前还不知道为什么,等待进一步的探索。。。 进一步的探索出来了: 我
2017-02-20 17:34:46
3260
1
原创 hover失效问题
在用后台数据重新构建html也就是demo树时,重新构建出来的控件是没有任何绑定事件的。//hover事件对ajax中重构的控件无效$('.a').hover(function(){ $('.b').show(); },function(){ $('.b').hide();
2017-02-15 09:49:11
1917
原创 ajax自带this对象
本篇博文主要讲,自己在前端开发中遇见的一个坑。先上代码:$(".setFirst").click(function () { var key = $(this).data("key"); var url = $(this).data("url"); var b = this;//这里的b为".setFirst
2017-02-14 14:41:38
207
原创 前端开发日记之window.onload
大家先自己想一想已下代码会输出什么?<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <script type="text/javascript"> function abc(){ var ele = document.getElementById("a");
2016-12-05 12:01:28
541
1
原创 第四章 变量、作用域和内存问题
与Java类似的对象引用问题var obj1 = new Object();var obj2 = obj1;obj1.name = "Nicholas";alert(obj2.name); //"Nicholas"首先,变量obj1 保存了一个对象的新实例。然后,这个值被复制到了obj2 中;换句话说,obj1和obj2 都指向同一个对象。这样,当为obj1 添加name 属性后,可以通ob
2016-11-15 13:15:27
211
原创 第三章:基本概念
本章主要讲了:Javascript的语法、数据类型、流控制语句和函数。我主要总结一下之前自己不了解或者了解得不是很清楚的一些知识点。1、函数体内的局部变量和全局变量。function test(){var message = "hi"; // 局部变量}function test1(){ message = "hi"; // 全局变量}为了防止变量污染,避免和我们之前的C编程习惯照成
2016-11-02 10:43:10
281
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人