139

なぜ私は...

キャッチされていない TypeError: string.split は関数ではありません

…走ると…

var string = document.location;
var split = string.split('/');

4

5 に答える 5

256

これを変える...

var string = document.location;

これに...

var string = document.location + '';

これは、document.locationLocation オブジェクトであるためです。デフォルトで.toString()は場所が文字列形式で返されるため、連結によってそれがトリガーされます。


文字列を取得するために使用することもできdocument.URLます。

于 2012-04-13T18:04:11.427 に答える
85

多分

string = document.location.href;
arrayOfStrings = string.toString().split('/');

現在のURLが必要だと仮定します

于 2012-04-13T18:05:57.367 に答える
14

これを実行

// you'll see that it prints Object
console.log(typeof document.location);

あなたがしたいdocument.location.toString()、またはdocument.location.href

于 2012-04-13T18:07:02.117 に答える
9

document.location文字列ではありません。

おそらく代わりにdocument.location.hreforを使いたいでしょう。document.location.pathname

于 2012-04-13T18:06:14.813 に答える