CoffeeScript #10
نویسنده: وحید محمدطاهری
تاریخ: ۱۳۹۴/۰۴/۲۲ ۲۰:۱۵
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
با استفاده از Destructuring assignments میتوانید خصوصیات را از آرایهها یا اشیاء، با هر میزان عمقی استخراج کنید.
someObject = { a: 'value for a', b: 'value for b' }
{ a, b } = someObject
console.log "a is '#{a}', b is '#{b}'" var a, b, someObject;
someObject = {
a: 'value for a',
b: 'value for b'
};
a = someObject.a, b = someObject.b;
console.log("a is '" + a + "', b is '" + b + "'"); {join, resolve} = require('path')
join('/Users', 'Vahid') استفاده از کتابخانههای خارجی دقیقا مانند فراخوانی توابع CoffeeScript است. در پایان نوشتن کدهای CoffeeScript، همه به جاوااسکریپت تبدیل میشوند:
# Use local alias
$ = jQuery
$ ->
# DOMContentLoaded
$(".el").click ->
alert("Clicked!") var $;
$ = jQuery;
$(function() {
return $(".el").click(function() {
return alert("Clicked!");
});
}); # Execute function immediately
type = do ->
classToType = {}
for name in "Boolean Number String Function Array Date RegExp Undefined Null".split(" ")
classToType["[object " + name + "]"] = name.toLowerCase()
# Return a function
(obj) ->
strType = Object::toString.call(obj)
classToType[strType] or "object" var type;
type = (function() {
var classToType, i, len, name, ref;
classToType = {};
ref = "Boolean Number String Function Array Date RegExp Undefined Null".split(" ");
for (i = 0, len = ref.length; i < len; i++) {
name = ref[i];
classToType["[object " + name + "]"] = name.toLowerCase();
}
return function(obj) {
var strType;
strType = Object.prototype.toString.call(obj);
return classToType[strType] || "object";
};
})();