var函数

go语言学习之路 二:变量

点点圈 提交于 2019-12-25 01:07:01
说道变量,首先应该提一提关键字,因为不能把关键字当做变量来声明。 关键字: 下面列出GO语言的关键字或保留字: break default func interface select case defer go map struct chan else goto package switch const fallthrough if range type continue for import return var 除了以上介绍的这些关键字,Go 语言还有 36 个预定义标识符,其中包含了基本类型的名称和一些基本的内置函数,见下表: append bool byte cap close complex complex64 complex128 uint16 copy false float32 float64 imag int int8 int16 uint32 int32 int64 iota len make new nil panic uint64 print println real recover string true uint uint8 uintptr 这些关键字和保留字不需要特意去记,先走马观花看看,在以后的编程过程中会反复看到这些身影。 变量 声明变量的一般形式是使用 var 关键字:var identifier type。需要注意的是,Go 和许多编程语言不同

JS函数节流

早过忘川 提交于 2019-12-24 16:17:56
函数节流原文地址 :http://www.cnblogs.com/haoxl/archive/2016/03/07/5252409.html JS函数节流 背景: 在前端开发中,有时会为页面绑定resize事件,或为一个页面元素拖拽事件(其核心就是绑定mousemove)在一个正常操作中也有可能在一个短时间内触发非常多次事件绑定程序,而DOM操作是很消耗性能的,如果为这些事件绑定一些操作DOM节点的操作的话就会引发大量的计算,在用户看来页面可能就一时间没有响应,这个页面就变卡变慢了,甚至在IE下,如果绑定的resize事件进行较多DOM操作,其高频率可能直接就使得浏览器崩溃。 函数节流简单讲就是让一个函数无法在很短的时间间隔内连续调用,只有当上一次函数执行后过了你规定的时间间隔,才能进行下一次该函数的调用。 函数节流原理:用定时器,当触发一个事件时,先setTimout让这个事件延迟一会再执行,如果在这个时间间隔内又触发了事件,那我们就clear掉原来的定时器,再setTimeout一个新的定时器延迟一会执行。 优缺点: 《JavaScript高级程序设计》中介绍的函数节流 function throttle(method,context){ clearTimeout(method,tId); method.tId=setTimeout(function(){ method

S实现图片压缩、预览、图片Base64转换

你。 提交于 2019-12-24 14:40:05
//封装一个函数 function ImgToBase64(file, maxLen, callBack) { var img = new Image(); var reader = new FileReader();//读取客户端上的文件 reader.onload = function () { var url = reader.result;//读取到的文件内容.这个属性只在读取操作完成之后才有效,并且数据的格式取决于读取操作是由哪个方法发起的.所以必须使用reader.onload, img.src = url;//reader读取的文件内容是base64,利用这个url就能实现上传前预览图片 }; img.onload = function () { //生成比例 var width = img.width, height = img.height; //计算缩放比例 var rate = 1; if (width >= height) { if (width > maxLen) { rate = maxLen / width; } } else { if (height > maxLen) { rate = maxLen / height; } }; img.width = width * rate; img.height = height * rate; /

Javascript初识之数据类型

守給你的承諾、 提交于 2019-12-24 08:29:37
一、JavaScript概述 1、ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这门语言能够成为国际标准。 次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript,这个版本就是1.0版。 该标准一开始就是针对JavaScript语言制定的,但是没有称其为JavaScript,有两个方面的原因。一是商标,JavaScript本身已被Netscape注册为商标。 二是想体现这门语言的制定者是ECMA,而不是Netscape,这样有利于保证这门语言的开发性和中立性。 因此ECMAScript是JavaScript的规格,JavaScript是ECMAScript的一种实现,在日常场合,这两个词是可以互换的。 javascript遵守ECMA指定的标准,换句话说javascript就是ECMAscript的方言。 2、ECMAScript的历史 年份 名称 描述 1997 ECMAScript 1 第一个版本 1998 ECMAScript 2 版本变更 1999 ECMAScript 3 添加正则表达式 添加try/catch ECMAScript 4 没有发布 2009

jQuery升级踩坑大全

寵の児 提交于 2019-12-24 07:18:21
背景   jQuery想必各个web工程师都再熟悉不过了,不过现如今很多网站还采用了很古老的jQuery版本。其实如果早期版本使用不当,可能会有DOMXSS漏洞,非常建议升级到jQuery 1.9.x或以上版本。前段时间我就主导了这件事情,把公司里我们组负责的项目jQuery版本从1.4.2升级到了jQuery 1.11.3。jQuery官方也为类似升级工作提供了jQuery Migrate插件。   言归正传。   坑从何处来   jQuery 1.11.3是1.x时代的最后一个版本(作者更新:2016年1月8日,jQuery 1.12.0上线,jQuery 1.11.3不再是1.x时代最后一个版本了),由于我的部门项目已经有一定年头了,当时还是采用的jQuery 1.4.2,这次升级步子迈得算是比较大。早期时候jQuery的很多写法,在新版本中已经被废弃,亦或者有些不规范的写法,当时版本还能支持,但是现在已经不支持。更糟糕的情况是,新版本还支持,但是功能已经和以前不一样了……这种情况连个错都不会报,需要深入到代码逻辑里面去看。   jQuery官方推荐了jQuery Migrate 库来解决jQuery升级问题。不过一直采用这个库终究不是长久之计,开发中建议使用jQuery Migrate的开发版,可以在浏览器控制台上打印出来不兼容的地方详细信息

BOM浏览器对象模型

好久不见. 提交于 2019-12-24 05:33:54
BOM概述 什么是BOM BOM(Browser Object Model)即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window。 BOM由一系列相关的对象构成,并且每个对象都提供了很多方法和属性。 BOM缺乏标准,JavaScript 语法的标准化组织是ECMA,DOM的标准化组织是W3C,BOM最初是Netscape浏览器标准的一部分。 DOM与BOM的对比 DOM BOM 文档对象模型 浏览器对象模型 DOM就是把 文档 当做一个 对象 来看待 把 浏览器 当做一个 对象 来看待 DOM的顶级对象是document BOM的顶级对象是window DOM主要学习的是操作页面元素 BOM学习的是浏览器窗口交互的一些对象 DOM是W3C标准规范 BOM是浏览器厂商在各自浏览器上定义的,兼容性较差 BOM的构成 BOM比DOM更大,它包含DOM window document location navigation screen history window对象是浏览器的顶级对象,它具有双重角色 它是JS访问浏览器窗口的一个接口 它是一个全局对象,定义在全局作用域中的变量,函数都会变成window对象的属性和方法。在调用的时候可以省略 window,前面学习的对话框都属于 window对象方法,如alert()、prompt()等。 注意

js基本

泄露秘密 提交于 2019-12-24 05:16:49
dom 元素的事件 事件都哪几类: 鼠标事件 mousedown mouseup mouseover mousemove mouseleave mouseout mouseenter 键盘事件 keydown keyup keypress 表单事件 blur focus change 浏览器事件 load error resize 触屏事件 touchstart touchmove touchend js的事件在使用的时候要带on 1.dom元素直接绑定事件 在元素亨内直接添加事件 行内同类型事件只能绑定一次 2.直接动态绑定事件 (获取dom 在绑定事件) 3.事件的监听 var dom1=document. getElementsByTagName(“button”); console.log(dom1[0]);//htmlcollection 集合类型 [index] 获取元素 var dom2=document.getElementsByClassName(“btn”); console.log(dom2);//htmlcollection 集合类型 [index] 获取元素 var dom3=document.getElementsByName(“but”); console.log(dom3);//NodeList 集合 [index] 获取元素 var dom4

jquery 格式化系统时间

雨燕双飞 提交于 2019-12-24 03:21:18
Date.prototype.Format = function (fmt) { //javascript时间日期函数 var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; }; var time1

小程序获取时间格式

☆樱花仙子☆ 提交于 2019-12-23 21:58:05
小程序获取时间格式 效果图片: .wxml <view class='date'> <picker mode="date" value="{{date1}}" start="2018-01-01" end="2222-10-08" bindchange="changeDate1" fields="month"> <view> <{{util.sub1(date1)}}> 统计 </view> </picker> </view> .wxss .date { padding-top: 20rpx; padding-bottom: 20rpx; text-align: center; color: #fff; background-color: #21c7dc; } .js // .js var util = require('../../utils/util.js'); var dateTimePicker = require('../../utils/dateTimePicker.js'); Page({ /** * 页面的初始数据 */ data: { date1: '', startYear: 2018, endYear: 2300, }, changeDate1(e) { var that = this; that.setData({ date1: e.detail.value

JavaScript写一个拼图游戏

走远了吗. 提交于 2019-12-23 20:39:55
  拼图游戏的代码400行, 有点多了, 在线DEMO的地址是: 打开 ;   因为使用canvas,所以某些浏览器是不支持的: you know;    为什么要用canvas(⊙o⊙) ? 因为图片是一整张jpg或者png, 我们要用把图片导入到canvas画布, 然后再调用 上下文context 的 getImageData 方法, 把图片处理成小图, 这些小图就作为拼图的基本单位;    如何判断游戏是否结束 , 或者说如何判断用户拼成的大图是正确的? 我们就要在刚刚生成的小图上面 添加自定义属性 , 后期在小图被移动后再一个个判断,如果 顺序是对 的, 那么这张大图就拼接成功, 允许进入下一关;      游戏一共有四个关卡, 不会有人通关的,真的....因为第四关把图片的宽高分别切成了6份, 看着都晕好吧(∩_∩);           因为要考虑到 移动端 的效果, 所以主界面图片是 根据屏幕适配 , 拼图大图的大小是屏幕宽度和屏幕高度之间最小值的一半, 都是为了不出现滚动条。 比如:用户的手机是横屏模式, 这个横屏的宽度是1000px,高度是300px, 如果我们把主图片的宽设置为屏幕1000px的一半500, 那么垂直方向就出滚动条了;   用户的事件只要考虑 上下左右四个方向键 即可, 要判断图片是否可以移动, 也要考虑到当图片移动的时候的 动画效果