javascript - 用 JS 重复值和替换值

标签 javascript jquery function javascript-objects

这里是 JS 新手。我在替换和重复函数中的值时遇到问题。代码如下:

function Phone(ring) {
  this.ring = ring;
}
function updateRing(newRing) {  
  this.newRing = ring;
}

var samsung = new Phone('Chim');
samsung.ring(2); // Needs to compute to "Chim, Chim"

var htc = new Phone('Dada');
htc.ring(3); // Needs to compute to "Dada, Dada, Dada"
htc.updateRing('Riri');
htc.ring(1); // Needs to compute to "Riri"

对于第一个函数的重复值,我尝试使用 this.repeat 但它在 Phone 函数中不起作用。

对于updateRing函数,我无法获取替换this.ring的代码。

我删除了我编写的所有无用代码。预先感谢您的任何帮助。

最佳答案

您可以使用string.repeat()重复字符串

let a = "ring"

console.log(a.repeat(2))

但是为了让逗号分隔符干净地工作,您可以创建一个一次性数组,并且join()带有逗号。

let ringString = Array(3).fill("ring").join(", ")
console.log(ringString)

对于其他人,您可能想要使用类,这非常简单,但如果没有 ployfill,则不要在 IE 上运行。或者原型(prototype),一开始可能会有点令人困惑。以下是使用原型(prototype)在 Phone 对象上定义方法的示例:

function Phone(ring) {
  // changed to ring_tone too prevent clash with this.ring method
  this.ring_tone = ring;
}
// you need to define these on the prototype to you can use `this`
Phone.prototype.updateRing = function(newRing) {
  // don't need to define a this.newRing, just update the ring
  this.ring_tone = newRing;
}

Phone.prototype.ring = function(n) {
  return new Array(n).fill(this.ring_tone).join(', ')

}

var samsung = new Phone('Chim');
console.log(samsung.ring(2)); // Needs to compute to "Chim, Chim"

var htc = new Phone('Dada');
console.log(htc.ring(3)); // Needs to compute to "Dada, Dada, Dada"

htc.updateRing('Riri');
console.log(htc.ring(1)); // Needs to compute to "Riri"

关于javascript - 用 JS 重复值和替换值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50478522/

相关文章:

javascript - 无法将表隐藏在 asp.net 中

azure - 事件中心错误 : Catching an exception: status-code: 401, 状态描述:未经授权的 TrackingId:xxx

python - 将数据框的列追加到列表中

javascript - Cheerio 通过选择器解析 html 时遇到的问题

javascript - 确定 DOM 内的元素是否附加有函数

javascript - 在tinymce中更改图像信息后有没有办法获得回调?

php - 使用 Javascript 实时读取 PHP 数组的结果

jQuery:通过ajax加载的内容可以更新DOM吗?

jquery - 将 json 对象解析为 ruby​​ 对象时出错

C++: vector 的子 vector 作为函数的参数