作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直想知道,javascript(或一般语言)如何使用“替代”语法来声明内置对象的实例化?例如。
// This being the same as..
var array = new Array('hi','there');
// This.
var array = ['hi','there'];
// or
var myFun = new Function("a","b","return a * b");
// being the same as..
var myFun = function(a,b){ return a * b }
如果我要在自己的图书馆工作,有什么办法可以做到这一点吗?说我想为特定事物制定某种新语法?原型(prototype)方法里有什么东西吗?或者这超出了开发者的能力范围,只能在 W3 的掌握范围内?
John Resig 的 jQuery 似乎有独特的语法
$('.class').css({'color':'#000'});
为了获得这种级别的定制,他需要做一些更深层次的事情吗?或者是做类似的事情的问题..
// Obviously just a very simple example.
var $ = function(param){
return document.querySelectorAll(param);
}
我非常想知道并期待听到您的答案,谢谢。
最佳答案
没有 JavaScript 库会改变语言的语法,因为 JavaScript 没有本地工具可以做到这一点。例如,jQuery“语法”只是简单的 JavaScript 语法。您也可以创建自己的名为 $
的函数,并编写返回对象的函数以允许“链接”代码风格。
某些语言具有不同强大的宏功能,可以有效地允许编写新语法。 JavaScript 不是这些语言之一(没有一些外部工具)。
像 TypeScript、PureScript 和 CoffeeScript 这样的东西本质上是预处理器,它们解析不同的语法来生成纯 JavaScript。
关于javascript - javascript 如何为函数和数组等对象创建替代语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28030933/
我是一名优秀的程序员,十分优秀!