2011-09-16 3 views
23

私はJavaScriptで次の変数を使用している場合に動作します。この文字列から「3」に出て解析するための最速の方法は何かは、どのように私は、文字列の最後の文字を取得することができます

var myString = "Test3"; 

すべてのブラウザ(IE6に戻る

+7

なぜこのような質問に答える必要がありますか?それはマニュアルで調べるのに30秒かかりますか? –

+0

@ooo文法に問題はありますか?冒頭に大文字の文と句読点を書くことができますか? – Bakudan

+3

@Pekka - 私はここでは7つの答えがあり、それらのほとんどはすべてのブラウザで動作しないので、間違っています。それほど単純ではないようです。 – leora

答えて

62

文字列はchar配列であるJavaScriptであるので、あなたは文字列の長さで最後の文字にアクセスすることができます。あなたは上記のような何かを行うことができるはず

var lastChar = myString[myString.length -1]; 
+1

ニース - やや速いです。 http://jsperf.com/get-last-character-from-stringを参照してください。 – ryanve

+1

注:これはes5で導入されたため、非常に古いブラウザではサポートされていません。 ** IE6 **。 – programmer5000

+6

** IE6 ** - 2017年2月23日 - 真剣に? –

2

charAtメソッドを使用します。この関数は1つの引数を受け取ります:文字のインデックス。

var lastCHar = myString.charAt(myString.length-1); 
15

それはそれをしない:最後の文字:

myString.substr(-1); 

これが最後から1つの文字で始まるMYSTRINGの部分文字列を返します。

また、これは動作します:

myString.charAt(myString.length-1); 
+3

substrはInternet Explorerでサポートされていないようです – leora

+1

これはIE6 7では動作しないことに同意しますか? – leora

+0

@leora IEは、https://developer.mozilla.org/ja/JavaScript/Reference/Global_Objects/String/substrに基づいて 'substr'で負の値を扱うことができません – ryanve

1
myString.substring(str.length,str.length-1) 

- ここで最後の文字

+0

私は最後の '10 '文字を取得しなければならず、それは私のために働いた' myString.substring(str.length、str。長さ - 10) 'である。ありがとう! – hmd

0
var myString = "Test3"; 
alert(myString[myString.length-1]) 

は、単純なフィドルのJavascriptの文字列

http://jsfiddle.net/MZEqD/

2

あるでしょうlengthというプロパティがあります。文字列。

var myString = "Test3"; 
var lastChar = myString.substr(myString.length -1); 

が編集:私が行っている前に、はい、または他のポストとして配列表記を使用

次に、あなたがしなければならないすべては最後の文字を取得するためにsubstr()機能を使用しています。

Lots of String functions explained here

0

あなたはのcharAt機能を見て、文字列の長さを取る必要があります。

var b = 'I am a JavaScript hacker.'; 
console.log(b.charAt(b.length-1)); 
関連する問題