首页 > 解决方案 > 如何从单引号'或双引号“保护javascript数组

问题描述

我在我的数据库中保留了一些消息,当我想在我的应用程序中使用它们时,我首先将它们加载到一个数组中,然后在需要的地方使用我的数组。下面是我的表:

Id  | Message  
-------------------------------
1   | Hello, It's Jack
-------------------------------
2   | Hello, My name is "Jack"

我使用下面的代码从我的数据库中检索数据并填充我的数组:

//I have created this function to get data from database  
getResult("select * from Messages" , function(result){
    var arr = [];
    eval("arr=" + result);
});

在这种情况下,我的数组如下:

[{Id:'1' , Message:'Hello, It's Jack'} ,
 {Id:'2' , Message:'Hello, My name is "Jack"'}]

由于在第一条消息中不恰当地出现了单引号,这不是一个有效的 javascript 数组。显然,如果我使用双引号而不是单引号来定义我的数组,我可能会对第二条消息有同样的问题。

如何保护我的数组免受数据库中输入的单引号或双引号字符的影响?

标签: javascriptarrayssql-serverloaddata

解决方案


推荐阅读