Javascript 如何将字符串转换为变量

Javascript 如何将字符串转换为变量,javascript,node.js,string,variables,Javascript,Node.js,String,Variables,我试图使用一个聊天程序的命令,我想编辑一个像这样的命令变量!editvar variablehere值 所以,如果它variablehere='123',我想把'123'变成123,或者像'hello'这样的东西变成hello,简单地说,我想把聊天信息中的字符串变成一个变量名 我尝试过解析和string.raw,但都不起作用 ifmessage.startsWith'keyeditvar'{ console.logmessage var bananasplit=message.split“”;

我试图使用一个聊天程序的命令,我想编辑一个像这样的命令变量!editvar variablehere值 所以,如果它variablehere='123',我想把'123'变成123,或者像'hello'这样的东西变成hello,简单地说,我想把聊天信息中的字符串变成一个变量名

我尝试过解析和string.raw,但都不起作用

ifmessage.startsWith'keyeditvar'{ console.logmessage var bananasplit=message.split“”; var bananasplitt=json.parsebananasplit console.logbananasplited[0]。keyeditvar var变量=bananasplit[1] console.logvariable var值=bananasplit[2] console.logvalue var variable2=String.rawvariable console.logvariable2 var value2=String.rawvalue console.logvalue2 }
我希望它能工作,请下次把一个干净的代码

将字符串转换为数字。您可以使用函数:Numberobject

例如:

Number('123')
Number('hello')
将返回123

如果对象值不是正确的数字,它将返回NaN

例如:

Number('123')
Number('hello')
我会回来的

我正在尝试将字符串转换为变量名

在Javascript中,您通常不会在当前范围内使用自定义名称动态定义新变量。虽然可以在全局范围内完成,但如果不使用eval等通常不推荐的工具,就无法在函数或块范围内轻松完成

相反,您使用对象并在该对象上创建属性。可以使用常规对象和常规特性,也可以使用具有某些附加功能的贴图对象

对于常规对象,可以执行以下操作:

// define base object
let base = {};

// define two variables that contain variable name and value
let someName = "greeting";
let someValue = "hello";

// store those as a property on our base object
base[someName] = someValue;
console.log(base);       // {greeting: "hello"}
然后,您可以更改该值:

someValue = "goodbye";
base[someName] = someValue;
console.log(base);       // {greeting: "goodbye"}
或者,您可以添加另一个:

let someOtherName = "salutation";
let someOtherValue = "Dear Mr. Green";

base[someOtherName] = someOtherValue;
console.log(base);             // {greeting: "goodbye", salutation: "Dear Mr. Green"}
console.log(base.greeting)     // "goodbye"
console.log(base[someName]);   // "goodbye"
console.log(base.salutation)   // "Dear Mr. Green"
console.log(Object.keys(base)) // ["greeting", "salutation"]
您可以将Javascript对象视为一组键/值对。键是属性名,值是值。您可以通过以下方式获得密钥数组:

Object.keys(obj)
您可以使用以下设置键/值对:

obj[key] = value;
delete obj[key]
您可以通过以下方式获取键的值:

console.log(obj[key]);
您可以通过以下方式删除密钥/值对:

obj[key] = value;
delete obj[key]
对于这样一个普通的Javascript对象,键必须全部是字符串或易于转换为字符串


如果您有非字符串键,则可以使用,因为它会将任何对象或基元值作为键,但它使用get和set方法来设置和获取键/值,而不是普通对象的赋值方案。

很难理解您要实现的目标。你能备份并描述你想解决的问题,而不是你想如何解决它吗。我们需要了解您试图解决的基本问题,然后推荐可能的解决方案。如果您试图动态引用变量,只需使用map/JavaScript对象。使变量名键,然后只是做一个查找。可能重复的,所以我试图做一个命令来改变一个变量,就像我键入!varchange examplevar examplevalue它会改变变量,我试图将字符串转换为变量名使用对象并将变量存储为该对象的属性。是的,我如何使用hellohello实现这一点Hello不是一个数字。你怎么能把它转换成一个合法的号码?你唯一能做的就是创建自己的算法,将无数字字符串转换成数字。我不想只做数字,我想做单词,所以你想转换哪个数字?