首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

JS

作为函数式编程语言,JS带来了很多语言上有趣特性,比如柯化和反柯化。 这里可以对照另外一篇介绍 JS 反柯文章一起看~ 1....var sendPost = sendAjax( _ , _ , { type: "POST", contentType: "application/json" }) JS不具备这样原生支持...(个人理解不知道对不对) 3.3 延迟执行 柯另一个应用场景是延迟执行。不断化,累积传入参数,最后执行。...,甚至有些前后矛盾,在下文章都是学习过程中总结,如果发现错误,欢迎留言指出~ 参考: JS高级程序设计 JS化(currying) 前端开发者进阶之函数柯化Currying 浅析 JavaScript...中 函数 currying 柯化 掌握JavaScript函数化 函数式JavaScript(4):函数柯

4.5K20

——化简2048游戏

github地址是:https://github.com/chilly/4096 假设想直接玩游戏訪问 4096.chillyc.info 这个4096 是直接copy2048。...为什么要做这个游戏 这个原因事实上是为让LP打到更高分数。当然还要有些难度。不能移动一个方块瞬间就变成8192。 还得让LP不能由于运气不佳挂掉。戴着枷锁跳呀跳。所以直接改了2048源代码。...2048这款游戏怎么做? 事实上非常细节,我也没有细致研究。 2048这个游戏代码量不大。最基本两个类是game_manager.js 和 grid.js。...游戏主要流程: 界面接收到keyboard请求 交给game_managermove函数 推断游戏是否失败 merge tile(也就是merge 色块) move tile 最后生成在随机位置生成随机...使得这两个比較大值能够merge。 比例如以下图中两个32色块: 这个图中向左移动后,32和32会移动到左边。那么第二行32右边出现小方块,那么下一次向右移动,32就有机会和32合并。

1.5K10

记几处原生JS开发

我先用jquery实现功能,然后替换里面几个方法即可 ,无非就是查找,添加class等! 在控制台先测试好,直接使用就行了,但遇到以下问题,简单记一下: 0、项目引用了prism.js来加亮代码。...高亮后,IE11非常的卡,无法滚动,按F12查看性能,要2秒多去渲染一屏,这和JS无关了。我以为是元素过多,IE性能太差原因。后来偶然把prism.css文件去掉,结果瞬间显示出来。...先想肯定是阴影或变形引起吧,就把css中shadow去掉,还不行。就一块块去CSS代码。在把透明度去掉,就好了!...执行它脚本会提示“不能执行已释放 Script 代码” 。 这个问题也好理解,因为我是往里写了完整页面: .........解决办法:window.scrollY || window.pageYOffset || document.documentElement.scrollTop 4、在IE11访问iframe时,document.getElementById

2.1K20

测试左移实践探讨 :测试左移在腾讯地图SDK实践

我理解"测试左移",即将测试活动与开发活动结合更加紧密, 同步于开发活动甚至早于开发活动便开始质量保障活动。业界已有关于测试前置一些讨论, 因此本文也沿用测试前置概念....一、持续测试过程 测试前置前提是持续集成和持续测试,持续测试前提是自动化测试。自动化测试实现离不开好测试框架和测试平台支持。...二、测试前置活动 1、引入测试前置活动原因 通过对版本bug系统分析,我们发现基础类问题占比达到30%(如图1),基础类问题是可以通过codereview,静态扫描,或者单元测试活动发现,大量基础类问题遗留到测试执行阶段...开发参与质量保证活动有CodeReview,进行静态扫描并扫清扫描中出现问题,和高质量自测。业界开发自测通常采用UT方式。在本产品中,自测以功能验证方式为主。...筛选原则如下: 1、逻辑性强模块; 2、当前测试用例代码覆盖率低模块; 3、代码可测性高模块:我们是从函数扇入扇出、函数行数、函数深度、函数圈复杂度等方面进行函数分级。

1.2K90

expressapplication.js路由代码

application.js是express框架核心,也是里面包括了服务端很多配置和逻辑代码。这里主要说一下和路由有关一些代码。...,其实然后直接通过router.handle进入到路由查找和处理,这个查找和处理过程在上一章已经分析过,也就是开始对router二维数组进行查找过程。...3.app.use本质是调用router方法进行处理,就是把传入函数挂载到layer层,然后储存在routerstack中,其中有一个特殊情况需要处理,就是如果用户传入了一个router类型路由对象时候...,这时候,如果匹配了对应路径时,执行是该路由对象handle方法,然后进入该router对象内部处理逻辑。...4.app.all方法本质是利用route对象进行配置路由,逻辑是一个两层循环,先是method数组循环,然后是在route中具体http方法函数循环。

2.8K40

JS游戏编程基础】关于jsthis关键字理解

this关键字在c++,java中都提供了这个关键字,在刚开始学习时觉得有难度,但是只要理解了,用起来就方便多了,下面通过本篇文章给大家详解jsthis关键字理解。...接下来你谈谈我对它理解,也作为一个笔记,方便以后参阅。有不对地方,欢迎指出批评。 1. 不像C#,this一定是指向当前对象。 jsthis指向是不确定,也就是说是可以动态改变。...函数自执行就是特殊情况,在函数自执行,this 指向是:window。所以第一个 console.log 打印是 window 属性 number。 所以要加一点: 3....在函数自执行,this 指向是 window 对象。 扩展,关于this,还有一个地方比较让人模糊是在 dom 事件,通常有如下3种情况: 如下: 1....——因为这时toString函数this指针指向div元素,而该元素已经定义了m_Text成员(this.newElement.m_Text = "new element text!")

3.1K101

项目结构——JavaScript版本2048实现

项目结构——JavaScript版本2048实现[0] 最近在看一本书《HTML5 Canvas开发详解》 看到了一定程度,打算找一个项目练练手 遂想到了前几年玩过一个游戏...2048 于是开始了尝试实现一个JavaScript版2048 项目结构 项目地址:https://github.com/jiasm/2048 LiveDemo: http://jiasm.org/2048...├── src │ ├── Base.js │ ├── Config.js │ ├── Utils.js │ ├── Game.js │ ├── GameController.js...(...arg) } } Config 该文件里边存储了一些配置参数,比如默认矩阵数量、2048中各个方块显示文本&颜色之类。...修改一个配置文件即可得到你想要2048 Utils 里边提供了一个log方法以及一个增强版logMatrix log方法只在window.debug === true时生效。

91460

js 函数作用域与this 指向实例

函数定义分为2种,(1)直接定义-window 下,内部定义;(2)对象方法(或对象原型方法),下面的函数fn1与fn2 是直接定义函数, doFunction是对象定义方法,这2种情况使用...变量跟全局var name = "window 下name ";是两个不同变量,也就是说这个局部name变量不会覆盖全局变量,如果去掉var则会覆盖全局name变量值 var...fn1();//输出window下name,窗口加载完定义些变量后执行fn1,此时fn1面的name是全局 fn2();//onload下name,由于定义了name在onload下局部变量...}; 代码输出结果: window下name onload下name MyObj下name 对于直接定义函数。...//MyObj下name }; 代码输出结果: window下name window下name MyObj下name JS容易犯错this和作用域 var someuser = {

74120

项目结构——JavaScript版本2048实现

项目结构——JavaScript版本2048实现[0] 最近在看一本书《HTML5 Canvas开发详解》 看到了一定程度,打算找一个项目练练手 遂想到了前几年玩过一个游戏2048 于是开始了尝试实现一个...JavaScript版2048 项目结构 项目地址:https://github.com/jiasm/2048 LiveDemo: http://jiasm.org/2048 . ├── LICENSE...GameRender.js │ └── index.js └── webpack.config.js 使用webpack进行打包,因为有用到了babel,所以整体语法采用ES6、ES7写法 (写起来无比舒心...(...arg) } } Config 该文件里边存储了一些配置参数,比如默认矩阵数量、2048中各个方块显示文本&颜色之类。...修改一个配置文件即可得到你想要2048 Utils 里边提供了一个log方法以及一个增强版logMatrix log方法只在window.debug === true时生效。

79240
领券