迭代器模式

循环访问聚合对象中的各个元素 。 var each=function(arr,callback){ for(var i=0,l=arr.length;i<l;i++){ callback(arr[i],i,arr[i]); }}each([1,2,3],function(i,n){ alert([i,n]);}); 内部迭代器 内部已经定义好规则 外部迭代器 外部迭代器必须显式地请求迭代下一个元素  for in 语句可以用来迭代普通字面量对象的属性。 中止迭代器 var each = function( ary, callback ){ ...

JavaScript之创建对象

第六章 创建对象 1、工厂模式 用函数来封装以特定接口创建对象的细节。 function CreatePerson(name, age, job) { var o = new Object(); o.name = name; o.age = age; o.job = job; o.dream = function() { alert(this.age); }; return o;}var preson1 = CreatePerson("秦始皇", "10000", "皇帝"); 工厂模式解决了创建多个相似对象的问题,没解决对象识别的问题,即如何知道一个对象的类型。...

微信公众号历史文章目录(第一期-2017-6-10)

含英咀华(44)——除非别人真有问题,否则不需要回答 #读书笔记#-《你的灯亮着吗?》 人生一百问 求职季,如何鉴别招聘信息? 含英咀华(43)-那些压箱底的软件(PC/Android) 含英咀华(42)——多言数穷 不如守中 含英咀华(41)—书本永远是起点而已,难免苍白无力 含英咀华(40)-相信我,你并不孤独 含英咀华(39)-对痛苦的思考才是财富 含英咀华(37)-有竞争力的薪酬,有看得见的未来 含英咀华(37)-别轻易给自己贴标...

ES6之解构 destructuring

简化从数据结构中获取相关子集的操作。 1 2 3 let options = { 4 repeat: true, 5 save: false 6 }; 7 // 从对象中提取数据 8 let repeat = options.repeat, 9 save = options.save; 10 11 对象结构语法在赋值语句的左侧使用 对象字面量。 在解构中使用var、let、const声明变量的时候,必须有初始化操作。 1 2 3 let node = { 4 type: "Identifier", 5 name: "foo" 6 }; 7 let { typ...

ES6 中的let与const

基础 变量的创建方式取决于你如何声明他。 var声明的变量,会被视为在函数级作用域内顶部的位置(不在函数内部则全局) function getValue(condition) { //var value; if (condition) { var value = "blue";//value="blue"; // other code return value; } else { // value exists here with a value of undefined return null; } // value ex...

每周一个TED

2017年3月25日 普通人如何变成魔鬼或英雄? 路西法效应 斯坦福实验 权力是关键 如果你想改变一个人,你就得改变其所处的情境。 如果你想改变情境,就得知道其权力存在于系统的何处。 2017年4月9日 kevin_slavin_how_algorithms_shape_our_world 2017年11月25日08:47:13 http://www.yixi.tv/lecture/391 一席|不二  http://www.yixi.tv/lecture/110  https://www.ted.com/talks/joshua_foer_feats_of_memor...

React Native 报错汇总(不断更新中2018年9月29日)

错误1:SyntaxError:Strict mode does not allow function declaration in a lexically nested statement.   解决办法: 打开下面的文件 node_modules\react-native\Libraries\Core\InitializeCore.js  如果没有,执行 npm install 修改代码 function handleError(e, isFatal)为var handleError = function(e, isFatal)  如下图所示:      错误2 com.android.builder.testing.api.DeviceException: ...

2016年JavaScript后起之秀

JavaScript 社区在创新方面全速前进,几个月后,曾经的趋势就会过时。 2016 结束了,你可能会想自己错过了一些重要的事情?别担心,我们将回顾一下主要的趋势。 让我们看看 **by the numbers** 这个在2016年推动的项目,它比较了在过去12个月,Github上 **added** 的 stars 数量。 在 2015年, [React](https://facebook.github.io/react/) 成为最大赢家 , [Flux](http://facebook.github.io/flux/...

【翻译】深入React之前

我正在帮助几位朋友学习React,但是只是基础原理方面的。他们之前没有前端开发方面的经验。 如果你已经是一名前端开发工程师,你可以跳到 作为前端工程师,在2017年应该学习哪些东西 学会提问 如何学会提问,何时询问,以及不问什么是重要的。比如说,你不确定如何管理状态,Google搜索 react 状态管理。你可以轻易地看到关于stores和redux的帖子。这将会使你头晕以及过度激动。 在每一次谈话中,我都告诉...

ES6之Module模块

ES6之前 CommonJS 和 AMD分别用于服务器和浏览器。 尽量的静态化,使得编译时就能确定模块的依赖体系。 export命令 显式地指定输出代码,再通过import命令输入。ES6模块不是对象! import { stat, exists, readFile } from 'fs'; 只加载3个方法,其他方法不加载! 严格模式 es6 自动使用严格模式,    不管你是否声明。 一些限制: 变量必须声明后再使用 函数的参数不能有同名...