Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将此PHP代码转换为Javascript?_Javascript - Fatal编程技术网

如何将此PHP代码转换为Javascript?

如何将此PHP代码转换为Javascript?,javascript,Javascript,我最近一直在尝试将我编写的日历转换为Javascript。对不起,我以前在这里问过一个问题,但我应该把这个问题包括在那个问题中 我获取代码的过程是:逐行遍历PHP,并将所有内容转换为Javascript中的等效语法。在PHP中,我没有使用POST将信息发送到页面,而是使用onclick链接调用calendar函数。我没有使用数组搜索,而是使用indexOf(etc,etc)。你明白了 为了正确地将代码转换为Javascript,我还需要做什么?我不想找人帮我做作业。日历在PHP中运行良好,我想我

我最近一直在尝试将我编写的日历转换为Javascript。对不起,我以前在这里问过一个问题,但我应该把这个问题包括在那个问题中

我获取代码的过程是:逐行遍历PHP,并将所有内容转换为Javascript中的等效语法。在PHP中,我没有使用POST将信息发送到页面,而是使用onclick链接调用calendar函数。我没有使用数组搜索,而是使用indexOf(etc,etc)。你明白了

为了正确地将代码转换为Javascript,我还需要做什么?我不想找人帮我做作业。日历在PHP中运行良好,我想我已经替换了所有必要的函数(例如,indexOf代替array\u search等等)。javascript代码与PHP程序完全相同:

PHP:

Javascript:

它错误地显示了十月,只显示了上一个链接。你自己来看看我的意思

从这里你会给我什么样的建议?一些人建议使用JSHint,但它给了我很多错误,我认为这些错误并不是真的需要(显然,我多次声明了变量,但没有任何东西会破坏程序)。我应该采取哪些有用的程序?也许我应该重新开始,一行一行地尽可能彻底地检查一遍?你们在移植(蹩脚的或非蹩脚的)代码时会做什么


我看到这里有人投票反对我提出这个问题,我做错什么了吗?我应该不厌其烦地问一下吗?

我意识到这并不能直接回答您的问题,但我建议从头开始重写javascript版本,而不是从php移植。JS有一个非常强大的Date对象,它可以为您处理所有的日期(月日、闰年等)。因此,大部分php代码在javascript中是不需要的

例如,这就是如何使用Date对象查找给定月份的天数和工作日:

var month = 10;
var year = 2011;

// this is the first of the month
var date = new Date(year, month - 1, 1);
// while we are in this month... 
while (date.getMonth() == month - 1) { 
    // print the date...
    document.write("date=" + d + " dow=" + d.getDay() + " day=" + d.getDate() + "<br>"); 
    // ...and goto the next day
    date.setDate(date.getDate() + 1); 
)
var月=10;
风险值年份=2011年;
//这是本月的第一天
var日期=新日期(年、月-1、1);
//当我们在这个月的时候。。。
而(date.getMonth()==month-1){
//打印日期。。。
文件。写入(“日期=“+d+”道=“+d.getDay()+”天=“+d.getDate()+”
”; //…第二天就去 date.setDate(date.getDate()+1); )
我只是想更新一下:事实上,我移植的代码完全没有问题——它是javascript。当我使用get day函数时,我假设与PHP一样,该函数以正确的顺序返回天数(如周一到周日)。这在我使用的页面中被省略了(在W3S上),因此,我可能会花一两天的时间纠结到底出了什么问题。在移植时,不要假设函数的工作方式与您使用的语言完全相同。