javascript - 我写的这个东西,怎么改成对象形式?

查看:111
本文介绍了javascript - 我写的这个东西,怎么改成对象形式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

var l = [];

for (i=0; i<app.activeDocument.layers.length;i++)  
{
    l[i] =[0,0,"0"] ;

    var a = app.activeDocument.layers[i];
    var ybl = new ybLayer( a ) ;    //( 图层对象 )

    l[i][0] = ybl.ybLeftTopY;
    l[i][1] = ybl.ybHeight;
    l[i][2] = app.activeDocument.layers[i].name ;

}  

解决方案

别闹,程序猿哪儿来的对象。。。

看看你的代码。。。该减肥了。。。

var l = [];

for (i=0; i<app.activeDocument.layers.length;i++)  
{
    l[i] =[0,0,"0"] ;

    var a = app.activeDocument.layers[i];
    var ybl = new ybLayer( a ) ;    //( 图层对象 )

    l[i][0] = ybl.ybLeftTopY;
    l[i][1] = ybl.ybHeight;
    l[i][2] = app.activeDocument.layers[i].name ;

} 

先把冗余的部分去一去:

var l = [];
for (i=0; i<app.activeDocument.layers.length;i++) {
    l[i] =[] ;
    
    var a = app.activeDocument.layers[i];
    var ybl = new ybLayer( a ) ;    //( 图层对象 )

    l[i][0] = ybl.ybLeftTopY;
    l[i][1] = ybl.ybHeight;
    l[i][2] = a.name ;
} 

再把重复的赋值合并一下:

var l = [];
for (i=0; i<app.activeDocument.layers.length;i++) {    
    var a = app.activeDocument.layers[i];
    var ybl = new ybLayer( a ) ;    //( 图层对象 )

    l[i] = [ybl.ybLeftTopY, ybl.ybHeight, a.name]
} 

然后整个容:

var l = app.activeDocument.layers.map(el => {
    var ybl = new ybLayer(el);
    return [ybl.ybLeftTopY, ybl.ybHeight, a.name];
});

对象还是没有,但是已经朝面向函数编程迈出了一小步。。。

这篇关于javascript - 我写的这个东西,怎么改成对象形式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆