2016-11-16 74 views

回答

0

Date object将包含浏览器运行的计算机的日期。用户更改日期并不神奇。如果他们允许位置API运行,您可以仔细检查。

的日期方法不是只读的,因此您可以覆盖它们:

这是简单得多阿尔瓦罗·冈萨雷斯提出,并在Chrome中没有给出任何错误

Date.now = function(){ 
 
    return "I have been replaced"; 
 
} 
 
console.log(Date.now());

2

可能?是:

console.log(Date.now()); 

var Date = { 
    now: function(){ 
     return "It's too late"; 
    } 
}; 

console.log(Date.now()); 
1479290688311 
It's too late 

安全吗?我尝试过堆栈溢出,它已经抛出了一堆JavaScript错误 - 我甚至无法提交答案,我不得不重新加载该网站。但是你不能阻止一个确定的用户打破他自己的浏览器。如果你在谈论数据安全性,你根本不能相信任何形式的外部输入。

+0

伟大的例子@Álvaro-González – MonkeyBizz

+1

'Date.now = function(){ return“I have been replaced”; }'更简单 – mplungjan

+0

@mplungjan没错。你可以擦掉整个物体或其中的一小部分。 –

相关问题