在返回范围中打印参数值

时间:2018-12-19 23:06:06

标签: javascript jquery typescript scope return-value

我有一个具有数据参数的createTool函数,它返回具有多个字段的对象,我想在返回数据中打印参数,但始终不打印任何内容,我如何在返回范围中打印数据参数?

javafx-graphics

1 个答案:

答案 0 :(得分:0)

我不确定我是否了解您要尝试执行的操作,但这是您的一个尝试:

function createTool(data){          
  return {
    id: 'sidebar',
    label: 'SideBar',
    content: {
      tagName: 'div',
      components: [
        {
          script: () => { console.log(data); }
        }
      ]
    }
  }
}

const test = createTool('Hello, world!');

test.content.components[0].script();

如果您绝对要以字符串形式返回函数(确实不是一个好主意),请按以下步骤操作:

function createTool(data){          
  return {
    id: 'sidebar',
    label: 'SideBar',
    content: {
      tagName: 'div',
      components: [
        {
          script: `console.log(${JSON.stringify(data)});\n`
        }
      ]
    }
  }
}

const test = createTool('Hello, world!');

eval(test.content.components[0].script);