Javascript 对象无法与 native javascript 方法(如 match()、替换等)一起使用

标签 javascript string object methods key

问题是这样的:

我去这个代码:

var str = {"Acc":10 , "adm_data":"Denied"};

当我做类似的事情时:

console.log(str.Acc.match(/[0-9]+/g)) // To Get the Integer Value from the "Acc" key

Firebug 尖叫声:

TypeError: str.Acc.match is not a function

console.log(str.Acc.match(/[0-9]+/g));

看图片:

enter image description here

我总是做这样的事情:

var str = "Hello _10";

console.log(str.match(/[0-9]+/g)) // This Works

为什么Object东西不工作?


PLEASE NOTE:

As mentioned by @Fabrício Matté. The issue was that I was trying to pass an integer Value to the .match method which does not belong to integers. The solution was to do what @kundan Karn Suggested. Something like: str.Acc.toString().match(/[0-9]+/g)// Converting it first to string then match. It worked!

最佳答案

match 函数适用于字符串。所以先将其转换为字符串

str.Acc.toString().match(/[0-9]+/g)

关于Javascript 对象无法与 native javascript 方法(如 match()、替换等)一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19701158/

相关文章:

Iphone 对象 C - 数据、对象和数组

javascript - 我使用 html 创建了两个名为用户名和密码的文本框,我想使用 javascript 检查用户名和密码是否匹配

javascript - 数组中相同的值必须放在一起

c# - 不会将字符串转换为十进制 c#(输入字符串的格式不正确。)

php - 将文本转换为图像 - PHP/GD - 保存图像

javascript - 数组的对象键

javascript - 在下拉选择菜单中获取所有值?

javascript - 在使用 Fusion Table 创建的 map 中创建指向 map 标记的链接

c++ - 解析字符串并交换子字符串

javascript - 是否可以在javascript中解析对象的所有公共(public)变量?