基本结构:箭头函数左边是参数,右边是返回值
//创建func函数
let func = num => num;
//上面的func函数等价于
let oldFunc = function (num) { return num };
//如果存在多个参数,参数需要括号包起来
let sum = (num1, num2) => num1 + num2;
//上面的sum函数等价于
let oldSum = function (num1, num2) { return num1 + num2; };
//如果返回值需要大量逻辑,并且一个表达式写不完,需要用花括号包起来返回体
let chkUsername = username => { if (username == 'zhang') { return 1; } else if (username == 'li') { return 2; } else { return 3; } }
//箭头函数的返回值支持使用已定义的函数
let getInt = num => parseInt(num);
//箭头函数的this,这是以前this的作用域,在函数中创建闭包,此时的this变了
let userAge = { age: 1, getAge: function () { var fn = function () { return this.age //此时的this指向的是windows } return fn(); }, setAge: function (age) { this.age = age; } }; userAge.setAge(19); console.log(userAge.getAge())
//箭头函数this总是指向词法作用域,也就是外层调用者obj
let userNewAge = { age: 1, getAge: function () { let fn = ()=>(this.age) return fn(); }, setAge: function (age) { this.age = age; } }; userNewAge.setAge(19); console.log(userNewAge.getAge())
由于工作需要长期使用Ajax,一个页面重复的AJAX请求太多,于是封装起来,只需要编写回调函数/* ------------- 使用方法: 1.ajaxrequest()函数执行准备的参数(1.请求地址2.发送数据字符串拼接3.type值可选get/post4.回调函数名称) exam...
<!-- 三个核心方法 openDatabase:这个方法使用现有数据库或创建...
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> ...
代码1:<!--代码开始--> <script src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script> <script>...
维护老项目中客户提到一个页面中有6个表单以上,导致每次保存一个其他的数据全部丢失,自己比较懒没有全部更换为ajax.用户每次输入完成或者选择完成记录cookie,每次提交后加载页面完成初始化cookie即可。以下代码取自w3school比较完善,之前在其他博客使用的经常出现bug,这个比较推荐使用:...
工厂模式虽然解决了创建多个对象的问题,但是并没有解决识别对象从属的问题.因为都属于object.因此出现了构造函数//构造函数名称首字母大写是规范 function Box(name,age){ this.name=name; this.age=age; this.run=funct...