テストコード|(JavaScript)プログラマー:ソウルで金婿を探す
に質問
String型配列seoulの要素の中で“Kim”の位置xを見つけて、“Kim seoがxの上で”Stringの関数を返して、解を完成します.「キム」はソウルで一度しか現れず、誤った値を入力しなかった.
制限
🎹📢I/O例
ほどく
const solution = (seoul) => "김서방은 " + seoul.indexOf("Kim") + "에 있다";
// 백틱 버전
const solution = (seoul) => `김서방은 ${seoul.indexOf("Kim")}에 있다`;
Array.indexOf()
とArray.findIndex()
の関数を思い出しました.indexOf()
は、要素にのみ含まれる可能性のあるデータを検索するために使用される.検索中に条件を指定するには、
findIndex()
を使用してコールバック関数を指定します.両方の関数は、条件を満たす対応する要素のインデックスを返し、ない場合は-1を返します.backtic(`)はES 6に導入されたテンプレートである.キーボードの波(~)に等しい文字.
backticを使用すると、
${}
でデータ、計算式、および関数のreturnデータを表すことができる.関数が返されない場合はundeffineを返します.また、一重引用符("")と二重引用符(""")の表示も容易であり、エスケープシーケンスで使用する必要がある行(n)と水平(t)は、入力を追加せずに直接適用することもできます.
すべての機能と計算が完了すると、結果は文字列に変換されます.
プログラマーのテストケースで確認すると、backticはもっと遅いようです.
また、
findIndex()
よりもArray.indexOf()
の方が性能が良い.理由を考慮すると、findIndex()
はユーザ定義のコールバック関数によって条件を検索し、要素を巡る過程でパラメータ値が変化し、内部コードを実行する過程で比較的遅い場合がある.🎈他人の解答
function solution(seoul){
var idx = seoul.indexOf('Kim');
return "김서방은 " + idx + "에 있다";
}
他の人も同じ方法で解いた.問題はそんなに簡単です.参考資料とサイト(ありがとうございます)
Reference
この問題について(テストコード|(JavaScript)プログラマー:ソウルで金婿を探す), 我々は、より多くの情報をここで見つけました https://velog.io/@goblin820/코딩테스트-JavaScript-프로그래머스-서울에서-김서방-찾기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol