小编Nik*_*yal的帖子

字符串操作以在字符串中查找变量

我正在使用 JS 并且有一个问题,我有两个字符串,例如:

var test = "This is a {feature1} and {feature2} boy.";
var data = "This is a very good and smart boy.";
Run Code Online (Sandbox Code Playgroud)

考虑到任何包含在其中的单词都是{}变量,替换变量的适当值将转换testdata.

问题陈述是如果问题有解决方案,我们需要找到每个单词的值,否则从方法返回false。

所以,在上面的例子中,我们有一个返回值

{
    feature1: 'very good',
    feature2: 'smart'
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经尝试了下面的代码,虽然它似乎可以工作,但这个操作似乎有点复杂。

var test = "This is a {feature1} and {feature2} boy.";
var data = "This is a very good and smart boy.";
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议一些更简单的方法或对实现的任何修改吗?

javascript string

2
推荐指数
1
解决办法
59
查看次数

尝试打印对象时调用 toString

toString()当我们尝试使用console.logstatement or打印对象时,我试图模仿 Java 的行为来调用该方法alert

目前,我已经尝试过类似的东西

class Some {
    constructor(array = []) {
        this.pvtData = array;
    }

    toString = () => JSON.stringify(this.pvtData);
}

const s = new Some([1, 2, 3]);
console.log(s);
Run Code Online (Sandbox Code Playgroud)

预期的输出应该是

[1,2,3]
Run Code Online (Sandbox Code Playgroud)

但是,我得到的输出为

{
  "toString": () => JSON.stringify(this.pvtData),
  "pvtData": [
    1,
    2,
    3
  ]
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我解决问题并获得所需的输出吗?

注意:
我不想使用console.log(s.toString());. 基本上,console.log声明不应该改变。

javascript

2
推荐指数
1
解决办法
76
查看次数

标签 统计

javascript ×2

string ×1