JavaScript将取代AppleScript?

苹果在官网发布了 JavaScript for Automation Release Notes (预览版),引起社区的广泛关注,讨论的普遍共识是,这是一个替代/补充的AppleScript的实验性尝试。

AppleScript的前身是Hypercard所使用的脚本语言Hypertalk。苹果发现Hypertalk类似英语的语法,可用于操控其他软件,于是开发出AppleScript,成为System 7的一部份。 AppleScript亦从苹果经典操作系统过渡到Mac OS X及Cocoa架构。苹果更随Mac OS X 10.2推出AppleScript Studio,可完全使用AppleScript制作具有图像界面的Cocoa软件。注: 摘自Wiki

JavaScript凭借其简单的语法,良好的性能,超轻量的框架,极小耦合的模块系统等等优势已经吸引了很多大厂的关注。

再加上JavaScript先天开放且无版权专利纠纷的问题,拥有非常广泛的开发者(开源)群体,苹果将其引入OS X平台代替私有的AppleScript,可能也有着一部分开放性平台的考虑,从而吸引广泛的第三方开发者。

(0)

相关推荐

  • JavaScript将取代AppleScript?

    苹果在官网发布了 JavaScript for Automation Release Notes (预览版),引起社区的广泛关注,讨论的普遍共识是,这是一个替代/补充的AppleScript的实验性尝试. AppleScript的前身是Hypercard所使用的脚本语言Hypertalk.苹果发现Hypertalk类似英语的语法,可用于操控其他软件,于是开发出AppleScript,成为System 7的一部份. AppleScript亦从苹果经典操作系统过渡到Mac OS X及Cocoa架构.

  • Javascript 面向对象编程(coolshell)

    这两天有个前同事总在问我Javascript面向对象的东西,所以,索性写篇文章让他看去吧,这里这篇文章主要想从一个整体的角度来说明一下Javascript的面向对象的编程.(成文比较仓促,应该有不准确或是有误的地方,请大家批评指正) 另,这篇文章主要基于 ECMAScript 5, 旨在介绍新技术.关于兼容性的东西,请看最后一节. 初探 我们知道Javascript中的变量定义基本如下: 复制代码 代码如下: var name = 'Chen Hao';; var email = 'haoel(

  • 浅谈javascript运算符——条件,逗号,赋值,()和void运算符

    前面的话 javascript中运算符总共有46个,除了前面已经介绍过的算术运算符.关系运算符.位运算符.逻辑运算符之外,还有很多运算符.本文将介绍条件运算符.逗号运算符.赋值运算符.()和void运算符 条件运算符 条件运算符是javascript中唯一的一个三元运算符(三个操作数),有时直接称做'三元运算符'.通常这个运算符写成'?:',当然在代码中往往不会这么简写,因为这个运算符拥有三个操作数,第一个操作数在'?'之前,第二个操作数在'?'和':'之间,第三个操作数在':'之后 varia

  • 14 个折磨人的 JavaScript 面试题

    翻到了这篇解释Javascript quiz的文章quiz-legend,反正没事儿,就想搬过来供大家学习.理解.背诵.批判. 问题一 (function(){ return typeof arguments;//"object" })(); arguments是一个Array-like对象,对应的就是传入函数的参数列表.你可以在任何函数中直接使用该变量. typeof操作符只会返回string类型的结果.参照如下列表可知对应不同数据,typeof返回的值都是什么: 由此我们推断出,t

  • 写给小白的JavaScript引擎指南

    关于本文标题,我并不认为参与写或者读本文的人是白痴.但是有时某个话题会让你觉得自己就像个白痴一样,而 JavaScript 引擎就是这些话题之一,至少对于我来说是这样. 有时编写 Web 应用的代码会感觉充满魔力,因为我们只是写了一系列字符,就能在浏览器里看到效果了.但是理解魔法背后的技术,可以帮助你更好地提高编程技巧.至少当你试图解释在 JavaScript 驱动的 web 或移动应用的幕后发生了什么的时候,会觉得自己不那么白痴了. 很多年前,那是我还是个研究生讲师,向一个教授抱怨还没有掌握那

  • JavaScript中对DOM节点的访问、创建、修改、删除

    DOM DOM就是Document object Model的缩写.文档对象模型是把XML或HTML以树节点为表现形式的文档.用DOM方法和属性,你可以访问,修改,删除页面上任意一个元素,也是可以添加一个元素.DOM是独立于语言的API,可以被任意语言所实现,当然也包括了Javascript 看看下面的一个文本. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/

  • 《JavaScript函数式编程》读后感

    本文章记录本人在学习 函数式 中理解到的一些东西,加深记忆和并且整理记录下来,方便之后的复习. 在近期看到了<JavaScript函数式编程>这本书预售的时候就定了下来.主要目的是个人目前还是不理解什么是函数式编程.在自己学习的过程中一直听到身边的人说面向过程编程和面向对象编程,而函数式就非常少.为了自己不要落后于其他同学的脚步,故想以写笔记的方式去分享和记录自己阅读中所汲取的知识. js 和函数式编程 书中用了一句简单的话来回答了什么是函数式编程: 函数式编程通过使用函数来将值转换为抽象单元

  • JavaScript中创建对象的7种模式详解

    ECMA-262把对象定义为:"无需属性的集合,其属性可以包含基本值.对象或者函数."严格来讲,这就相当于说明对象是一组没有特定顺序的值.对象的每个属性或方法都有一个名字,而每个名字都映射到一个值.正因为这样,我们可以把ECMAScript的对象想象成散列表:无非就是一组名对值,其中值可以是数据或函数. 创建自定义对象最简单的方式就是创建一个Object的实例,然后再为他添加属性和方法,如下所示: var person = new Object();.person.name = &qu

  • 不错的JavaScript面向对象的简单入门介绍第1/2页

    1) 如何创建对象: 1. 使用constructor,例如: var obj = new Object() // var 可以省略 var obj = new Date() 2. 使用对象字面值(object literals),例如: 程序代码 var obj = "123" // 创建一个String对象 var obj = /^abc$/ //创建一个RegExp对象 更加复杂的情况是,我们可以直接生成一个自定义的只有属性的对象: 程序代码 var obj = { name:&

  • javascript框架设计之框架分类及主要功能

    从内部架构和理念划分,目前JavaScript框架可以划分为5类. 第一种是以命名空间为导向的类库或框架,如果创建一个数组用new Array(),生成一个对象用new Object(),完全的java风格,因此,我们以某一对象为跟,不断为它添加对象和二级对象属性来组织代码,如金字塔般垒起来,早期代表YUI,EXT(so,不是有活力的公司都还用它们) 第二种是以类工厂为导向的框架.著名的有Prototype,还有mootools.Base2.Ten,它们基本上除了最基本的命名空间,其它模块都是一

随机推荐