如何在文件路径中使用变量? - javascript,d3

时间:2017-08-05 16:35:34

标签: javascript php d3.js

d3.tsv("//localhost/wordpress/" + my_var + ".tsv", function(d) {
d.frequency = +d.frequency;
return d;
}, function(error, data) {
if (error) throw error;

x.domain(data.map(function(d) { return d.letter; }));
y.domain([0, d3.max(data, function(d) { return d.frequency; })]);

我正在尝试将my_var变量成功集成到文件路径中,但它无法正常工作。有人能解释我为什么吗?

var my_var = <?php echo json_encode($title); ?>;

2 个答案:

答案 0 :(得分:3)

var my_var = <?php echo json_encode($title); ?>;

评估为:

var my_var = sometitle;

sometitle 可能未定义。你希望它是一个字符串:

var my_var = "<?php echo json_encode($title); ?>";

答案 1 :(得分:0)

这是因为my_var未被视为string的占位符。相反,my_var被视为另一个名为<?php echo json_encode($title); ?>的变量的占位符。进行以下更改,一切都应该有效:

var my_var = "<?php echo json_encode($title); ?>";

var url = "//localhost/wordpress/"
url += my_var
url += ".tsv"

d3.tsv( url, function(d) {
d.frequency = +d.frequency;
return d;
}, function(error, data) {
if (error) throw error;

x.domain(data.map(function(d) { return d.letter; }));
y.domain([0, d3.max(data, function(d) { return d.frequency; })]);