在javascript中创建一个只有year作为参数的日期对象

时间:2015-09-12 17:39:23

标签: javascript google-chrome safari cross-browser

的JavaScript

 D= new Date('2015');
在Chrome浏览器中

,成功创建日期。但在safari中抛出一个错误,它在safari浏览器中显示invalidDate。

我想创建一个只有年份参数的日期作为日期创建对象的输入,它应该在safari浏览器中工作

3 个答案:

答案 0 :(得分:1)

如果您不担心月和日,请尝试对其进行硬编码。例如

var year = '2015';
var d = new Date('01/01' + year);

答案 1 :(得分:1)

即使您只有年份,Date实例也必须包含所有内容。你可以弥补月和日:

public class PinPUK {
    public static void main(String[] a) {
    Scanner keyboard = new Scanner(System.in);
    System.out.print("Enter Pin Code: ");
    int tries = 0;
    boolean correctPin = false;
    while(!correctPin) {
        //It is better to scan the next line and parse the integer
        int choice  = Integer.parseInt(keyboard.nextLine());
        if (choice == 123) {
           System.out.println("Welcome!"); 
           correctPin = true;   
        }
        else if (tries < 3{
            System.out.println("Password is incorrect! Try again!"); 
       }    
       else if (tries >= 3)
          System.out.println("SIM blocked");
       }
   }
}

请注意,这些参数是数字,而不是字符串。

答案 2 :(得分:0)

如果是这样,谷歌浏览器就错了。

规格

new Date();
new Date(value);
new Date(dateString);
new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]]]]]);

进一步阅读:http://www.ecma-international.org/ecma-262/6.0/#sec-date-constructor