在javascript中以文本形式插入变量

insert variable as text in javascript

本文关键字:插入 变量 文本 javascript      更新时间:2023-09-26

我想以文本形式传递一个变量,或者以某种方式使上述函数工作:

var title = "Hello World";
chrome.tabs.executeScript(tabId, {code: "var param1='"+title+"'; var param2='value2'; "}, function(){ /*some code*/ });

当我执行上面的函数时,它不会将title传递给param1,它必须将param1定义为title。因为title是动态的,它可能是不同的,所以我真的需要知道如何传递我的标题变量。

如果我这样更改代码:

chrome.tabs.executeScript(tabId, {code: "var param1='Hello World!'; var param2='value2'; "}, function(){ /*some code*/ });

比完美效果更好

title字符串包含引号、换行符或反斜杠。必须转义这些字符:

var title = 'Your string was here, with a "quote" etc.';
// Escape each special character:
title = title.replace(/[''"']/g, '''$&') /* Backslash and quotes */
             .replace(/'n/g, '''n')      /* Newlines             */
             .replace(/'r/g, '''r')      /* Carriage returns     */
             .replace(/'t/g, '''t')      /* Tabs                 */
             .replace(/'b/g, '''f')      /* Backspace            */
             .replace(/'f/g, '''b');     /* Form feed            */
chrome.tabs.executeScript(tabId, {code: "var param1='"+title+"'; var param2='value2'; "}, function(){ /*some code*/ })