Sint(1,2).j(10) // 13
这样的函数怎么实现。
function Sint(a,b){ this.val= a + b}Sint.prototype.j= function(e){ return this.val + e}
这样操作需要 new Sint(1,2) ,有什么办法可以实现直接 Sint(1,2).j(10) 输出结果吗?
补充一个思路,直接打印没法做到直接输出值,但是可以利用参与计算时,底层会调用 Symbol.toPrimitive
所绑定的方法,是可以做到直接跟运算符号的
function Sum(...args) { this.value = args.reduce((a, b) => a + b, 0); return new Proxy(this, { get: function (target, prop) { if (prop === Symbol.toPrimitive) { return () => target.value; } return target[prop]; } });}Sum.prototype.add = function (value) { this.value += value; return this;}
使用示例
// 访问值new Sum(1,2,3).add(4).add(5).value // 15// 参与计算new Sum(1,2,3).add(4).add(5) + 20 // 35
function Sint(a: number, b: number) { return { val: a + b, j: function (e: number) { return this.val + e; } } } console.log(Sint(1,2).j(10)); // 13
function Sint(a: number, b: number) : any { return new Proxy({} as {}, { get(target, prop) { if (prop === 'j') { return (e: number) => a + b + e; } return Reflect.get(target, prop); } })}console.log(Sint(1, 2).j(10)); // 13
持续链 那得加一个启动函数
function Sints(a: number, b: number) { return { _count : a + b, j: function (e: number) { this._count += e return this; }, exec: function () { return this._count; } } } console.log(Sints(1,2).j(10).j(20).j(30).exec())
问题内容: 如何使用链接调用JavaScript代码? 问题答案: 要么 编辑: 上面的回答确实不是一个好的解决方案,自从我最初发布以来,已经学到了很多有关JS的知识.
参考leetcode的javascript解决方案-添加两个数字https://leetcode.com/problems/add-two-numbers/ 为什么列表范围在头部范围改变时不改变,即头部改变时。next被分配给新节点引用,head被分配回head。接下来,为什么要列出它。next没有改变,与整个链表保持相同 请参考以下解决方案- 我试了下面的东西,但它给出了一些不同的输出,当a.n
问题内容: 有没有办法找出调用堆栈? 问题答案: 请注意,此功能是 非标准的 ,来自: 非标准 此功能是非标准的,不在标准范围内。不要在面向Web的生产站点上使用它:它不适用于每个用户。实现之间也可能存在很大的不兼容性,并且将来的行为可能会更改。 以下是2008年的旧答案,现代Javascript不再支持该答案:
问题内容: 我想包装这样的javascript代码: 这是我如何用Java编写它: 但这不起作用。即使您在我的浏览器控制台中也没有任何错误。有人知道如何使它适用于外部回调函数吗?感谢致敬。 问题答案: 我终于找到了解决方案。看来我的Java代码与我的JavaScript代码不一致。感谢Colin Alworth为我指出了不一致的部分。所以这是我的完整代码: 现在,每当我运行它时,都会正确调用外部函
本文向大家介绍JavaScript的级联函数用法简单示例【链式调用】,包括了JavaScript的级联函数用法简单示例【链式调用】的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript的级联函数用法。分享给大家供大家参考,具体如下: 级联函数 级联函数就是在对象调用中通过点的方式串联调用,在jQuery中就是链式调用, 其关键点就是在内部 return this 返回自身 应
问题内容: 如何从PHP调用JavaScript函数? 以下代码来自 xyz.html (单击按钮时),它在外部 xyz.js中 调用a 。这将调用wait.php。 和 wait.php 从那里以同样的方式从另一个PHP文件调用代码。 该否则工作正常,但它不会被调用我想要的方式。 问题答案: 就PHP而言(或者实际上,通常是一个Web服务器),HTML页面只不过是一个大字符串而已。 您可以使用P