微信小程序开发经验总结(六)
来源:互联网 发布:校园网络组建方案设计 编辑:程序博客网 时间:2024/06/07 19:58
微信小程序开发经验总结
微信小程序开发经验总结(一)
微信小程序开发经验总结(二)
微信小程序开发经验总结(三)
微信小程序开发经验总结(四)
微信小程序开发经验总结(五)
微信小程序开发经验总结(六)
微信小程序开发经验总结(七)
15. 能用上的js知识
string
大小写
//大写string.toUpperCase();//小写string.toLowerCase();
判空
var string;if (!string) {//空}
长度 string.length
正则
//大小写字母function checkLetter(value){ var str = /^[A-Za-z]*$/;if (str.test(value)) { return true; } return false;}//电话号码function checkPhone(phone){ if(!(/^1[34578]\d{9}$/.test(phone))){ return false; } return true;}
子字符串
//含start 不含stopstringObject.substring(start,stop)
格式
var str='abc' var str="abc"
数组
push pop
//push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。arrayObject.push('other line')//pop() 方法用于删除并返回数组的最后一个元素。arrayObject.pop()
join
//join() 方法用于把数组中的所有元素放入一个字符串。//元素是通过指定的分隔符进行分隔的。arrayObject.join(separator)arrayObject.join('\n')
排序
//localeCompare()提供的比较字符串的方法,考虑了默认的本地排序规则 var list = [{ city:'厦门', pinyin:'xiamen' }, { city: '北京', pinyin: 'beijing' }, { city: '长春', pinyin: 'changchun' }, { city: '上海', pinyin: 'shanghai' } ]; list.sort(function (a, b) { return a.pinyin.localeCompare(b.pinyin); }); console.log(list);//reverse() 方法用于颠倒数组中元素的顺序。arr.reverse()
删除
- //删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变)var arr = ['a','b','c','d'];arr.splice(1,1);console.log(arr); //['a','c','d']; //删除起始下标为1,长度为2的一个值(len设置2)var arr2 = ['a','b','c','d']arr2.splice(1,2);console.log(arr2); //['a','d']
字符串转数组
var letters = "*abcdefghjklmnopqrstwxyz".split('');
遍历
for(var item in arr) {document.write(arr[item]+",");}
math
string转int
parseInt()var j = parseInt("11")
四舍五入
1.丢弃小数部分,保留整数部分parseInt(5/2)2.向上取整,有小数就整数部分加1Math.ceil(5/2)3,四舍五入.Math.round(5/2)4,向下取整Math.floor(5/2)
object
用.为对象添加属性
obj.username = "allen";??只能添加字符串属性
用关键字delete删除属性
[]添加属性,功能强大,可以动态添加属性
demandData.use_trip[date] = detail;
通过原型对象增加属性或者方法
//方式1:在原有的原型对象上增加属性或者方法function Person(){}Person.prototype.add = function(){alert(this.name);};Person.prototype.name = "aty";var p1 = new Person();p1.add();//aty//方式2:重写(覆盖)原型对象function Person(){}Person.prototype = {add : function(){ alert(this.name);},name : "aty"}var p2 = new Person();p2.add();//aty如果是先创建对象,然后再修改原型,那么如果采用方式1,已经创建的对象能够正确访问修改后的原型;如果采用方式2,已经创建的对象无法访问到修改后的原型。从这个角度来看,显然方式1比方式2更好原型对象上的所有属性和方法,都会被对象实例所共享a:原型对象的作用,就是定义所有对象实例所共享的属性和方法。b:prototype,对于构造函数来说,它是一个属性;对于对象实例来说,它是一个原型对象。
that=this
这属于 JavaScript 的设计缺陷,正确的设计方式是内部函数的 this 应该绑定到其外层函数对应的对象上,为了规避这一设计缺陷,聪明的 JavaScript 程序员想出了变量替代的方法,约定俗成,该变量一般被命名为 that。
var that = this;
var point = { x : 0, y : 0, moveTo : function(x, y) { var that = this; // 内部函数 var moveX = function(x) { that.x = x; }; // 内部函数 var moveY = function(y) { that.y = y; } moveX(x); moveY(y); } }; point.moveTo(1, 1); point.x; //==>1 point.y; //==>1
const var let val
const定义的变量不可以修改,而且必须初始化
const b = 2;//正确// const b;//错误,必须初始化 console.log('函数外const定义b:' + b);//有输出值// b = 5;// console.log('函数外修改const定义b:' + b);//无法输出
var定义的变量可以修改,如果不初始化会输出undefined,不会报错。
let是块级作用域,函数内部使用let定义后,对函数外部无影响。
let c = 3;console.log('函数外let定义c:' + c);//输出c=3function change(){let c = 6;console.log('函数内let定义c:' + c);//输出c=6} change();console.log('函数调用后let定义c不受函数内部定义影响:' + c);//输出c=3
val js原生的没有val方法,val方法一般都是jquery的或者自己定义的
time date
new Date()
new Date(milliseconds) :把毫秒数转换为Date对象new Date(dateStr) :把字符串转换为Date对象1) yyyy/MM/dd HH:mm:ss (推荐):若省略时间,返回的Date对象的时间为 00:00:00。2) yyyy-MM-dd HH:mm:ss :若省略时间,返回的Date对象的时间为 08:00:00(加上本地时区)。若不省略时间,此字符串在IE中会转换失败! iphone6s 失败new Date(year, month, opt_day, opt_hours, opt_minutes, opt_seconds, opt_milliseconds) :把年月日、时分秒转换为Date对象1)new Date("month dd,yyyy hh:mm:ss"); 2)new Date("month dd,yyyy"); 3)new Date(yyyy,mth,dd,hh,mm,ss); 4)new Date(yyyy,mth,dd); 5)new Date(ms); Date() 方法可返回当天的日期和时间。
阅读全文
0 0
- 微信小程序开发经验总结(六)
- 微信小程序-开发经验总结
- (干货)微信小程序开发经验总结
- 微信小程序开发一些经验总结
- 微信小程序开发经验总结(一)
- 微信小程序开发经验总结(二)
- 微信小程序开发经验总结(三)
- 微信小程序开发经验总结(四)
- 微信小程序开发经验总结(五)
- 微信小程序开发经验总结(七)
- 微信小程序-开发经验总结---(基础重点)
- 程序开发经验总结
- Linux程序开发经验总结
- 程序开发经验总结
- 微信小程序开发手记之六:API
- 微信小程序开发常见问题FAQ之六
- 微信小程序开发—(六)录音
- windows 7 内核程序开发经验总结
- bzoj 3439: Kpm的MC密码
- Android HTTP保存sessionid
- 【笔记】 HPPT头部信息分析 Part-2
- shell脚本编程
- JAVA使用poi进行EXCEL模板导入导出,XSSFCell数据类型
- 微信小程序开发经验总结(六)
- 17. Letter Combinations of a Phone Number(根据手机按键求字母的组合)
- Java笔记之泛型方法
- Servlet笔记——(2.1)Servlet简介
- java pdf多签名
- Unity ImageEfffect 摄像头画面镜像处理
- python之Numpy的使用
- centos安装java
- 【技术贴收集】 .Net core学习笔记教程