我在 javascript 中有以下代码
我将 php 数组存储在下面的 javascript 数组中
<script type="text/javascript">
var name=new Array();
<?php
for($i=0;$i<count($ids); $i++)
{
echo "name[$i]='".$name[$i]."';";
}
?>
</script>
当我在 Firefox 中提醒 name[1] 时,我可以看到 name[1] 的值,但是当我在 chrome 中运行代码时,我在提醒框中得到了未定义的信息。
我该如何解决这个问题。 我是否必须改变存储数组的方式或者我是否必须做其他事情。
最佳答案
因为你在声明变量时犯了很大的罪:p>
- 这是一个全局性的做法,这是不好的做法。
- 它的名字是
name
,这是chrome中的保留关键字,只需打开控制台并输入for (n in window){if (n === 'name'){console.log(true)}}
,它会记录 true - 不要使用
new Array();
,使用[]
在 php 前面:要么一致使用双引号,要么使用单引号(但这只是我个人的偏好):
echo "name[$i]='{$name[$i]}';";
echo 'name['.$i.']="'.$name[$i].'";';
就像你放置卷发的方式一样......:-P
关于php - Chrome 中的 JavaScript 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11844501/