摘要: JS 语言的动态性,使我们能够修改对象乃至类型的成员,主要有两种方式: 对 __proto__/prototype 进行操作,修改原型对象; 使用代理 Proxy 对对象进行一次封装,返回包装后的代理对象给用户使用 一、通过修改原型对象 /*增删改 Excel 对象的成员样例*/ class Mod 阅读全文
posted @ 2021-08-26 15:23 nutix 阅读(4689) 评论(0) 推荐(0) 编辑
摘要: 一、简介 从 WPS 2021 版本开始,WPS 正式支持使用 JS 作为宏语言,官方称 JSA(报错时,用得就是这个名称),亦即 JS for Application 的缩写。 根据官方文档(https://open.wps.cn/docs/office)中的介绍,WPS 内嵌了一个 V8 引擎的 阅读全文
posted @ 2021-08-26 15:20 nutix 阅读(49059) 评论(4) 推荐(6) 编辑
摘要: linq.js 是一个开源的包,我下载自 https://github.com/mihaifm/linq,大家如果需要可由此地下载,其代码如下: 1 /* 2 * linq.js - LINQ for JavaScript 3 * licensed under MIT License 4 * */ 阅读全文
posted @ 2021-08-26 15:17 nutix 阅读(4302) 评论(0) 推荐(2) 编辑
摘要: 下面我们通过一个例子,来了解一下日常宏编程中最常面临的任务: 注意:因为使用了全局表达式,请将【工具】》【选项】》【编译】》【禁止全局作用域表达式】取消勾选 1 /*提供一些表格相关的工具函数与常数*/ 2 const XLS = { 3 //数据有效性类型枚举 Range.Validation.A 阅读全文
posted @ 2021-08-26 15:13 nutix 阅读(9261) 评论(0) 推荐(2) 编辑
摘要: 下面我们通过一示例,来了解一下最常打交道的 Range 对象: 1 /*关于[单元格区域(Range)]对象的测试*/ 2 function Range_Test() { 3 {//1.Range 对象的获取 4 let rangePathPrinter = rng => Console.log(' 阅读全文
posted @ 2021-08-26 15:11 nutix 阅读(7921) 评论(0) 推荐(0) 编辑
摘要: 一、支持大部分 ES6 特性 1.class 下面是关于 ES6 引入的经典类的试验代码: 1 /*参数类型异常 :用于封装参数类型异常信息*/ 2 class ParameterTypeError extends Error { 3 constructor(paramName, paramType 阅读全文
posted @ 2021-08-26 15:10 nutix 阅读(2880) 评论(1) 推荐(0) 编辑