Shift js string一个字符

时间:2010-07-08 03:42:45

标签: javascript hash

在PHP中,它很简单,我假设,array_shift($ string)?

如果没有,我确信有一些同样简单的解决方案:)

但是,有什么方法可以在javascript中实现相同的功能吗?

我的具体示例是从地址栏中提取window.location.hash以动态加载特定的AJAX页面。如果哈希是“2”,即http://foo.bar.com#2 ......

var hash = window.location.hash; // hash would be "#2"

我最好把#关闭,所以一个简单的“2”被输入到该函数中。

谢谢!

3 个答案:

答案 0 :(得分:11)

hash = hash.substr(1);

这将取消hash的第一个字符并返回其他所有字符。这实际上与PHP substr函数的功能相似,这可能就是你应该使用PHP来获取字符串的子串而不是array_shift(我甚至不知道{{1}将使用字符串!)

答案 1 :(得分:2)

如您所料,Array prototype上还有shift()个功能。

字符串不是Array,而是"array-like objects"所以要在shift()上致电String,首先必须是split()

var char = str.split("").shift();

答案 2 :(得分:0)

基于Ben关于转换为数组的观点,假设我们假设只有一个字符作为哈希,并且它是最后一个字符,我们应该真正使用:

var hash = window.location.split("").pop();