博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实现如下语法的功能:var a = (5).plus(3).minus(6); //2
阅读量:5284 次
发布时间:2019-06-14

本文共 708 字,大约阅读时间需要 2 分钟。

从里看到了6个基础题目:本篇是第5题 - 实现如下语法的功能:var a = (5).plus(3).minus(6); //2

 

解题关键:

1、理解使用(5)和5的区别

2、构造函数原型的扩展(Object.prototype)

 

解点1:理解使用(5)和5的区别

console.log( (5).toString() ); // 5console.log( 5.toString() ); // Unexpected token ILLEGAL

(5)是一个表达式,它会返回一个Number对象,而5是一个常量,不会返回一个Number对象。

 

解点2:构造函数原型的扩展

js中,所有的数字都是一个Number对象,也可以理解为"数字是根据Number构造函数new出来的实例"。每一个对象都有原型,一旦对某个构造函数的原型添加属性或方法,那么以此构造函数new出来的实例都会增加此属性或方法,如题,我们只需要对Number进行扩展plus和minus两个方法即可解决该问题,代码如下:

Number.prototype.plus = function(n) {    return this.valueOf() + n;}Number.prototype.minus = function(n) {    return this.valueOf() - n;}console.log( (5).plus(3).minus(6) ) //2

 

根据解此题的思路,还可扩展String/Math等……

此解解答完毕!

转载于:https://www.cnblogs.com/langzs/p/6637614.html

你可能感兴趣的文章
数值优化(Numerical Optimization)学习系列-目录
查看>>
用ADMM求解大型机器学习问题
查看>>
交替方向乘子法(ADMM)的原理和流程的白话总结
查看>>
深度学习面试100题
查看>>
数值优化(Numerical Optimization)学习系列-无梯度优化(Derivative-Free Optimization)...
查看>>
AI面试必备/深度学习100问1-50题答案解析
查看>>
推荐算法基础--相似度计算方法汇总
查看>>
从几个简单例子谈随机优化技术
查看>>
论文笔记-IGCV3:Interleaved Low-Rank Group Convolutions for Efficient Deep Neural Networks
查看>>
向量点积(Dot Product),向量叉积(Cross Product)
查看>>
ReLeQ:一种自动强化学习的神经网络深度量化方法
查看>>
GCN代码分析 2019.03.12 22:34:54字数 560阅读 5714 本文主要对GCN源码进行分析。
查看>>
贝叶斯估计和极大似然估计到底有何区别
查看>>
机器学习中优化相关理论基础汇总
查看>>
矩阵白化
查看>>
【GCN】图卷积网络初探——基于图(Graph)的傅里叶变换和卷积
查看>>
利用合成数据进行时间序列分类的数据扩充方法
查看>>
基于 KubeSphere CI/CD 将 Spring Boot 项目发布至 Kubernetes
查看>>
梯度下降优化算法综述
查看>>
学习率变更策略
查看>>