こんにちは、アンダーソンです。
今回はSalesforce 認定 JavaScript Developer 1の
試験想定問題集を載せていきます。
LWC開発に必須のJavaScript、クライアントからサーバーサイドまで
幅広く問われるこの試験で知識をしっかり身につけましょう!
問1
下記のコードを実行するとどれが出力されますか?
function sum(a, b) {
return a + b;
}
sum(1, '2');
A: NaN
B: TypeError
C: “12”
D: 3
C: “12”
問2
値をstrLangに正しく初期化する2つの構文例はどれですか?
A. let strLang = ‘javascript’;
B. const strLang = ‘java’ + ‘script’;
C. let strLang = javascript;
D. str strLang = ‘javascript’;
A. let strLang = ‘javascript’;
B. const strLang = ‘java’ + ‘script’;
問3
下記のコードを実行するとどれが出力されますか?
function Person (fName, lName) {
this.fName = fName;
this.lName = lName;
}
Person.prototype.age = 29;
let jim = new Person('Jim', 'Smith');
let sofia = new Person('Sofia', 'Smith');
console.log(jim.__proto__.age);
console.log(sofia.age);
Person.prototype = {age : 18};
let Kris = new Person('Kris','Cooper');
console.log(Kris.age);
A.29,29,29
B.18,18,18
C.29,29,18
D.29,18,18
C.29,29,18
問4
下記のコードを実行するとどれが出力されますか?
let message = { hello : 'Hello',
names : ['Sue', 'Joe'],
showMessage: function() {
this.names.forEach(name => {
console.log(this.hello + ' ' + name);
});
}
}
message.showMessage();
A.Hello Sue,Hello Joe
B.this.hello Sue,this.hello Joe
C.Hello name,Hello name
D.errorで出力されない
A.Hello Sue,Hello Joe
問5
try … catch構文でcatchするための引数として渡されるエラーオブジェクトの2つの主なプロパティは何ですか?
A.名前とスタックトレース
B.タイトルとメッセージ
C.タイトルとスタック
D.名前とメッセージ
D.名前とメッセージ
問6
下記のコードを実行するとどれが出力されますか?
let s_prim = 'foo'
let s_obj = new String(s_prim)
console.log(typeof s_prim)
console.log(typeof s_obj)
A.String,Object
B.String,String
C.Object,Object
D.String,Class
A.String,Object
問7
下記のコードを実行するとどれが出力されますか?
let greeting;
greetign = {}; // Typo!
console.log(greetign);
A: {}
B: ReferenceError: greetigng is not defined
C: ReferenceError: greetign is not defined
D: undefined
A: {}
問8
BigIntとして値をインスタンス化するにはどうすればよいですか?
A.何もありません。値が((2 ^ 53)-1)より大きい場合、JavaScriptは自動的に数値をBigIntにキャストします。
B. const bigInt = BigInt.parse(1234567890123456789012345678901234567890);
C. const bigInt = 1234567890123456789012345678901234567890n;
D. const bigInt = BigInt.parse( ‘1234567890123456789012345678901234567890’);
C. const bigInt = 1234567890123456789012345678901234567890n;
問9
下記のコードを実行するとどれが出力されますか?
const obj = { a: 'one', b: 'two', a: 'three' };
console.log(obj);
A: { a: “one”, b: “two” }
B: { b: “two”, a: “three” }
C: { a: “three”, b: “two” }
D: SyntaxError
C: { a: “three”, b: “two” }
問10
下記のコードを実行するとどれが出力されますか?
function Person(firstName, lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
const member = new Person('Lydia', 'Hallie');
Person.getFullName = function() {
return `${this.firstName} ${this.lastName}`;
};
console.log(member.getFullName());
A: TypeError
B: SyntaxError
C: Lydia Hallie
D: undefined
A: TypeError
JavaScriptでは、関数はオブジェクトであるため、メソッドgetFullNameはコンストラクター関数オブジェクト自体に追加されます。 そのため、Person.getFullName()を呼び出すことはできますが、member.getFullNameはTypeErrorをスローします。
すべてのオブジェクトインスタンスでメソッドを使用できるようにする場合は、そのメソッドをプロトタイププロパティに追加する必要があります。
Person.prototype.getFullName = function(){
return $ {this.firstName} $ {this.lastName};
};
まずは10問です!
まだまだ続きますので、ぜひチャレンジしてみてください!
次の問題はこちらからどうぞ!