小编use*_*143的帖子

位移与乘法

我正在尝试将字节数组转换为数字,对于大数字,我看到位移是给出-ve结果.你们其中一个人可以为什么我们看到这个问题?您是否看到使用"乘法"而不是"位移"的任何缺点?

例如,

<script language="JavaScript">
    var myVar = 1000000;
    document.write("Bit shift Result: " + (myVar << 8));
    document.write("<br>");
    document.write("Multiplication Result: " + parseInt(myVar *256));
</script>
Run Code Online (Sandbox Code Playgroud)

输出:

位移结果:256000000

乘法结果:256000000

在向myVar添加一个零之后,您会看到我正在讨论的问题

<script language="JavaScript">
    var myVar = 10000000;
    document.write("Bit shift Result: " + (myVar << 8));
    document.write("<br>");
    document.write("Multiplication Result: " + parseInt(myVar *256));
</script>
Run Code Online (Sandbox Code Playgroud)

输出:
位移结果:-1734967296

乘法结果:2560000000

javascript bit-shift multiplication

7
推荐指数
1
解决办法
2210
查看次数

使用 Moment Timezone 将 UTC 转换为太平洋时间 (javascript)

我正在尝试将“formattedLocalTime”设置为太平洋时间,我的 4 行代码如下所示。

虽然 chrome 调试器将“locTime”显示为“Tue Sep 30 2014 16:17:25”,这是我期望的正确值,但最后一行中的 formattedLocalTime 是“09/30/2014 11:17 pm”,这是 UTC 时间而不是我设置的时区(America/Los_Angeles),它应该是“09/30/2014 4:17 pm”(4:17 而不是 11:17)

非常感谢任何建议。

var timestamp = 1412144245453;                      // Tue Sep 30 2014 23:17:25
var utc = moment.tz(timestamp, "Etc/UTC");          // Tue Sep 30 2014 23:17:25 (displayed in chrome debugger)
var locTime = utc.clone().tz("America/Los_Angeles"); // Tue Sep 30 2014 16:17:25 (displayed in chrome debugger)
var formattedLocalTime = moment(locTime).format("MM/DD/YYYY h:mm a")
Run Code Online (Sandbox Code Playgroud)

javascript timezone angularjs momentjs

2
推荐指数
1
解决办法
1万
查看次数