当前位置: 乐呵网 > js学习网 > JavaScript验证 >

研发周报:超实用的JavaScript能力及最佳实践

时间:2014-06-13 02:11来源:乐呵网提供 作者:乐呵网 点击:
本周看点:CodeCombat游戏全面开源:玩游戏也能学编程、【开源专访】Node-Webkit作者王文睿:桌面应用的全新开发方式
更具体的信息请参阅: 红帽的通告和 CentOS的通告。

王文睿:今朝我任职于Intel公司开源技能中心(OTC),从事Web和欣赏器技能开拓事情。此刻主要事情是开拓和维护Node-Webkit项目。此前从事过MeeGo、Tizen和JNI xml机能库的开拓和数据中心办理方案处事。我于2005年插手Intel公司,此前于结业于中科大少年班,在计较机系得到博士学位,研究偏向为高机能计较。

文中所提供的代码片断都已颠末最新版的Chrome 30测试,该欣赏器利用V8 JavaScript引擎(V8 3.20.17.15)。

var foo = 10; foo == 10 && doSomething(); // is the same thing as if (foo == 10) doSomething(); foo == 5 || doSomething(); // is the same thing as if (foo != 5) doSomething();

||也可以用来配置函数参数的默认值

对付这个问题,Mozilla暗示,这些操纵系统及其生态都不是真正的开放,应该有这么一个真正开放的生态来替代它们。基于Web的机动性和强大的成果,用户可以在任何平台上得到体验一致的应用措施,而不需要依赖特定的设备。

1.利用逻辑标记&&可能||举办条件判定

CodeCombat是一款跨平台游戏,可以在多个系统上运行,而且已被翻译成多个语言版本。

Firefox OS的代码是开源的,这样用户可以看到该系统不绝进化完善的进程,在小我私家资料处理惩罚和安详性方面,开源的系统会越发靠得住。

2.新一代IDE Light Table开源:让编程事情更简朴
for (var name in object) { if (object.hasOwnProperty(name)) { // do something with name } }6.逗号操纵符 var a = 0; var b = ( a++, 99 ); console.log(a); // a will be equal to 1 console.log(b); // b is equal to 997.计较或查询缓存变量

在利用jQuery选择器的环境下,开拓者可以缓存DOM元素

2013年,Mozilla渡过了15岁的生日,这一年,Mozilla正式宣布了Firefox OS,高调进入移动规模。本文就往返首一下2013年Firefox的过程,并展望它在2014年的成长。

王文睿:其实是一个打包的成果,将项目文件打包和Node-Webkit可执行文件安排在一起,就可以直接运行了。Node-Webkit启动的时候会自动加载页面文件。

王文睿:当时候已经相识到Node.js平台在Web开拓者中很风行,有许多库,可以写当地应用。所以就有了用它扩展WebRuntime的想法。对比本身界说很多API, 这样做开拓者险些不需要进修新的接口,并且利便本身用JS可能C++扩展。

  • 项目地点:  https://github.com/rogerwang/node-webkit
  • 文档:  https://github.com/rogerwang/node-webkit/wiki
  • 本期,我们对Node-Webkit的项目提倡人Rogerwang,真名王文睿举办了采访,请他来谈谈Node-Webkit的开拓始末,以及实现道理。

    Node-Webkit的项目提倡人 王文睿 

    这里尚有一个雇用统计网站(),可以举办比拟作为参考。Simply Hired也号称全球最大的雇用网站。

    CSDN:将HTML/CSS/JS编译为当地代码,其内部进程是什么样的? 

    8.Firefox OS的2013回首和2014展望

    CSDN:Node-Webkit答允回收Web技能开拓当地应用的道理是什么?详细是如何实现的?

    王文睿:项目标焦点思想就是在DOM中跑的代码可以或许直接挪用Node.js中运行的代码,所以焦点的部门是把二者跑在同一个线程中。需要把Chromium历程的事件轮回和Node.js的事件轮回归并在一起,而且把二者的V8 JS引擎情况(Context)归并起来。

    Firefox OS的2013

    下面就让我们来细细咀嚼上周出色文章:

    在上周,CSDN研发频道颁发了,许多开拓者都以为内里所提到的能力很是实用,基于此,我们再向各人推荐超实用的JavaScript能力及最佳实践(下),但愿对各人有所辅佐。

    Function doSomething(arg1){ Arg1 = arg1 || 10; // arg1 will have 10 as a default value if it’s not already set }2.利用map()要领来遍历数组 var squares = [1,2,3,4].map(function (val) { return val * val; }); // squares will be equal to [1, 4, 9, 16] 3.舍入小数位数 var num =2.443242342; num = num.toFixed(4); // num will be equal to 2.44324.浮点数问题 0.1 + 0.2 === 0.3 // is false 9007199254740992 + 1 // is equal to 9007199254740992 9007199254740992 + 2 // is equal to 9007199254740994

    0.1+0.2便是0.30000000000000004,为什么会产生这种环境?按照IEEE754尺度,你需要知道的是所有JavaScript数字在64位二进制内的都暗示浮点数。开拓者可以利用toFixed()和toPrecision()要领来办理这个问题。

    5.

    Light Table所基于的开拓原则:

    Firefox OS的2014

    面临两大劲敌——Android、iOS,Windows Phone在微软和诺基亚强大的配景下很是艰巨地抢占了一点市场份额,移动规模的竞争已经进入了白热化状态,Mozilla为何还要趟这个浑水呢?

    CentOS加盟红帽后,红帽的Linux系统产物线如下:

    2013年头,Mozilla在全球移动通信大会(MWC)上正式宣布了Firefox OS。

    (责任编辑:admin)
    ------分隔线----------------------------
    栏目列表
    推荐内容