Open fushang318 opened 11 years ago
字符 é 的 unicode 转义写法为 \u00E9,那这两个字符串 "café" === "caf\u00e9" 是比较结果是 A, True B, False
选择正确的注释 A, // 单行注释 B, /* 这里是一段注释 / // 这里是另一段注释 C, / 另一段单行注释 D,
/*
* 这又是另一段注释
* 注释连写多行
*/
哪个才是对象直接量 A, 12 B, 'hi' C, null D, {x:1}
选择正确变量 A, $sí B, 4$abc C, é$str D, continue
哪些需要加分号,否则无法按照正常逻辑解析代码 A, var y = x + f (a + b).toString()
B, var a a / 3 console.log(a)
C, a = 3 b = 4
D, var x = 0 [x, x + 1, x + 2].forEach(console.log)
编程题
# content
定义一个数字变量 count,并给 count 赋值
用 if else 分支语句分别输出
console.log("count > 10")
console.log("count < 10")
# init_code
var count = 3 * 4
// input code
console.log("count > 10")
// input code
console.log("count < 10")
# rule
暂略
编程题
# content
定义一个字符串变量 color,并给 color 赋值
用 switch case 分支语句分别输出
console.log("color is red")
console.log("color is green")
console.log("color is other")
# init_code
var count = "red"
// input switch case code
# rule
暂略
编程题
# content
用 while 语句输出( console.log(x) ) 1 到 20
# rule
暂略
编程题
# content
用 for 语句输出( console.log(x) ) 1 到 20
# rule
暂略
编程题
# content
用 for/in 语句输出( console.log(book[x]) ) 变量 book 的所有属性值
# init_code
var book = {title : "javascript 语言精粹" page : 200}
// input code
# rule
暂略
想要跳出一个循环体或者switch语句时,需要用到__(单选) A
A break
B continue
C return
D throw
想要想要在一个循环体内跳过当前循环进入下一个循环时,需要用到__(单选) B
A break
B continue
C return
D throw
如果一个函数内没有 return 语句,那么函数会把最后执行的一条语句的返回值作为函数的返回值(判断)
编程题
# content
补充代码,使运行代码后会按循序输出
"run(0) 方法运行异常"
"run(0)"
"run(1)"
# init_code
function run(a){
// input code
return 1 + a
}
try{
run(0)
}catch(e){
console.log("run(0) 方法运行异常")
}finally{
console.log("run(0)")
}
try{
run(1)
}catch(e){
console.log("run(1) 方法运行异常")
}finally{
console.log("run(1)")
}
# rule
暂略
1 + 2
有副作用;
B. a++
每次求值的结果都一样;
C. a += 4
每次求值的结果都不一样;
D. delet an_obj.prop
没有副作用;1 + "2" === 3
: T/F (F)false + false === NaN
: T/F (F)"2" + "2" === "22"
: T/F (T)1 & 2 === 2
: T/F (F)1 | 2 === 3
: T/F (T)==
和 ===
运算符, 下列表叔正确的是: (A)
A. 0 == false
;
B. 1 === "1"
;
C. 两个运算符作用完全一样;
D. false == NaN
;NaN > 9999999
: T/F (F)1 || 0
的求值结果是1: T/F (T)0 && "hello world"
的求值结果是"hello world"
: T/F (F)var a = 2; a += 1
后a
值为2: T/F (F)"a" in {a: 1}
: T/F (T)typeof null === "object"
: T/F (T)[1, 2, 3] instanceof Object
: T/F (T)1, 2, 1, 4
的求值结果是"undefined": T/F (F)整数:
在javascript中是否区分整数值和浮点数值
不是
浮点数:
javascript中所用数用什么数字类型表示 B
A.整数
B.浮点数
C.整数,浮点数都可以
字符串: javascript中字符串的索引值是从多少开始的 C
A.-1
B.1
C.0
转义字符:javascript中转义字符是使用什么表示的 B
A./
B.\
javascript中布尔值中正确是使用什么表示的 AD
A.true
B.false
C.0
D.1
下面那些是关于null和undefinded的正确描述 A
A.null是关键字,,而undefinded 不是
B.undefinded是关键字,而 null不是
C.null,undinded都是关键字
D.null,undinded都不是关键字
在客户端javascript中,在其表示的浏览器窗口中的所有javascript中,充当全局的对象是什么 D
A.Math
B.RegExp
C.Date
D.Window
当javascript解释器启动时,它创建的新的全局对象 选出下面那些是全局属性 B,C,E
A.Math
B.undinded
C.NaN
D.JSON
E.Infinity
当javascript解释器启动时,它创建的新的全局对象 选出下面那些是全局函数 C,D,E
A.open()
B.new()
C.isNaN()
D.parseInt()
E.eval()
当javascript解释器启动时,它创建的新的全局对象 选出下面那些是构造函数 A,D,E,F,G
A.Date()
B.System()
C.Stack()
D.Date()
E.RegExp()
F.String()
G.Object()
当javascript解释器启动时,它创建的新的全局对象 选出下面那些是全局对象 A,D
A.Math
B.undinded
C.NaN
D.JSON
E.Infinity
包装数字类型的对象是什么 A
A.Number()
B. Integer()
C.Boolean()
D.Array()
在javascript中 “7”*“4” 可以得到什么结果 C
A.出错
B."74"
C.28
D."7*4"
javascript中变量是哪一个关键字声明 C
A.String
B.Object
C.var
D.Number
javascript中函数体类声明的变量在函数体外是否有定义
没有
该对象 book 的创建有问题,请修改
var book = {
"main title": "javascript",
sub-title: "The definitive guide",
for, "all audiences",
author: {
firstname: "David",
surname: "Flanagan"
}
}
正确答案
var book = {
"main title": "javascript",
'sub-title': "The definitive guide",
'for', "all audiences",
author: {
firstname: "David",
surname: "Flanagan"
}
}
对象 portifolio{stockname: shares} 只用来存储股票的名称 stockname, 跟购股份额 shares, 请写一个函数 addstock 用来给 portifolio 添加股票, 该函数会有三个参数 addstock(portifolio, stockname, shares)
正确答案
function addstock(portifolio, stockname, shares) {
portifolio[stockname] = shares
}
对象 o = {x: 1} 下面哪些返回结果为 true A, delete o.x; B, delete o.toString; C, delete 1; D, delete o.x; delete o.x;
对象 o = {x: 1} 下面哪些返回结果为 true A, o.hasOwnProperty('x') B, o.hasOwnProperty('toString') C, o.x !== undefined D, o.toString !== undefined
请用控制台的方式输出该对象 var o = {x: 1, y: 2, z: 3} 的所有key
正确答案
var o = {x: 1, y: 2, z: 3}
for (p in o)
console.log(p)
请用 get, set 的方式实现 var o = {data_prop: 7} 一样的效果,并在控制台输出
正确答案
var o = {
get access_prop() {return data_prop},
set access_prop(value) {var data_prop = value}
}
o.data_prop = 7;
console.log(o.data_prop)
通过 defineProperty 方法, 创建对象 var o = {x: 1} 并设置成可写性,不可枚举,可配置性, 并在控制台输出可写性,枚举性,配置性结果
正确答案
var o = {}
Object.defineProperty(o, 'x', {
value: 1,
writable: true,
enumerable: false,
configurable: true
})
console.log(Object.getOwnPropertyDescriptor(o, 'x'))
将对象 o = {x: 1} 先系列化,再解析,最后输出到控制台
正确答案
var o = {x: 1}
s = JSON.stringify(o)
p = JSON.parse(s)
console.log(p)
下面哪些是从 Object.prototype 继承而来的方法 A, toString B, valueOf C, getPrototypeOf D, trim
在javascript,选出下面创建数组正确的选项 A,C,D
A.var arr = [1.1,true,'a',]
B.var arr = {1.1,true,'a',}
C.var arr = [1,{x:1,y:2},[2,{x:3,y:4}]
D.var arr = new Array(10)
var a = ['world'];
a[1] = 3.14;
i = 2;
a[i] = 3;
a[i+1] = 'hello';
a[a[i]] = a[0];
根据上面确定 a[0],a[1],a[2],a[3] 的值分别是 C
A. a[0] = 'world',a[1] = 3.14, a[2] = 'hello', a[3] = 3
B. a[0] = 'world',a[1] = 'hello', a[2] = 3.14, a[3] = 3
A. a[0] = 'world',a[1] = 3.14, a[2] = 3, a[3] = 'hello'
A. a[0] = 'world',a[1] = 3, a[2] = 'hello', a[3] = 3.14
var arr = [1,2,4,5,6] 请确定arr的长度 B
A.4
B.5
C.6
D.7
javascript中 a=[1,3,5] 对a数组的操作正确的是 A.C.E
A. a[0] = 'zero'
B. a.keys.length
C. a.push('zero','two')
D. remove a[1]
E. delete a[1]
var arr = [1,3,5,6,7] 请写出两种打印数组arr元素的遍历方法
方法一
for(var i = 0; i < arr.length; i++){
console.log(arr[i]);
}
方法二
for(var i in arr){
console.log(arr[i]);
}
请使用二维数组写一个九九乘法表
for(var i=0; i<=9;i++){
for(var j=1; j<=i; j++){
console.log(j + " * " + i + " = " + i*j + " ");
}
console.log('\n');
}
下面那些是ECMAScript 3 中数组的方法 A,E,F,G,H,I,J,K,O
A.join()
B.forEach()
C.map()
D.filter()
E.reverse()
F.sort()
G.concat()
H.slice()
I.splice()
J.push()和pop()
K.unshift()和shift()
L.every()和some()
M.reduce()和reduceRight()
N.indexOf()和lastIndexOf()
O.toString()和toLocaleString()
下面那些是 ECMAScript 5 中的数组方法 B,C,D,L,M,N
A.join()
B.forEach()
C.map()
D.filter()
E.reverse()
F.sort()
G.concat()
H.slice()
I.splice()
J.push()和pop()
K.unshift()和shift()
L.every()和some()
M.reduce()和reduceRight()
N.indexOf()和lastIndexOf()
O.toString()和toLocaleString()
在javascript中使用哪一个来判读数组类型 A,B
A.Array.isArray()
B.instanceof Array
C.parototype()
定义函数 square, 传参数 x, 返回该参数的平方根
正确答案
var square = function(x) { return x * x; }
下面代码中 calculator.result 返回的结果是多少
var calculator = {
operand1: 3,
operand2: 5,
add: function() {
this.result = this.operand1 + this.operand2;
}
}
calculator.result
A, 0 B, null C, 8 D, undefined
下面代码中,第二次 x 输出的值是多少
function f(x) {
console.log(x);
arguments[0] = null;
console.log(x);
}
A, null B, 0 C, undefined D, x
下面代码中, s(4) 的结果是多少
function square(x) { return x * x }
var s = square;
square(5);
s(5);
A, null B, undefiend C, 25 D, 0
下面代码中 jspy.getCount() 最终输出结果是多少
var jspy = (function() {
var _count = 0;
var incrementCount = function() {
_count++;
}
var getCount = function() {
return _count;
}
return {
incrementCount: incrementCount,
getCount: getCount
};
})();
jspy.incrementCount();
jspy.getCount();
A, 0 B, null C, 1 D, undefined
下面代码中, checkscope()() 返回值是多少
var scope = 'global scope';
function checkscope() {
var scope = 'local scope';
function f() { return scope; };
return f;
}
checkscope()()
A, null B, undefiend C, global scope D, local scope
下面代码中, constructFunction()() 返回值是多少
var scope = 'global';
function constructFunction() {
var scope = 'local';
return new Function('return scope');
}
constructFunction()();
A, global B, null C, local D, undefined
该正则表达式 /java(script)?/ 能匹配下面哪些
A, java B, javascript C, script D, undefiend
"JavaScript".search(/script/i) 返回值是多少
A, 3 B, 0 C, undefined D, 4
下面代码的返回值是什么
var pattern = /java/i;
pattern.test('JavaScript');
A, true B, false C, undefined D, null
类和模块
类和原型
对象 a 会从下面那个对象上继承属性(单选) D
A a.constructor
B a.prototype
C a.prototype.constructor
D a.constructor.prototype
类和构造函数
var a = new A(),下面那个是正确的(单选)
A a.prototype == A
B a.constructor == A
C a.prototype.constructor == A
D a.constructor.prototype == A
类的扩充
编程题
# content
使用 prototype 特性,在下面注释位置增加代码,使最后一行代码的输出内容为 "hello prototype"
# init_code
var A = function(){}
// input coce
console.log(new A().value())
类的类型
var a = new A(), 下面那些成立(多选) AB
A a instanceof A == true
B a.constructor == A
C a instanceof A.prototype == true
D a.constructor == A.prototype
JavaScript中的面向对象技术
编程题
# content
在下面注释位置增加代码,使最后几行的输出都是 true
# init_code
// input coce
var Book =
var title = "javascript 语言精粹"
var price = 28
var book = new Book(title,price)
console.log(book.title == title)
console.log(book.price == price)
console.log(book.pricing() == price * 0.8)
写一个类 B, 继承类 A, 并能够 通过 b = new B ,在控制台输出 b.x 的值
function A() {
this.x = 1;
}
正确答案
function B(){
A.call(this);
}
B.prototype = new A;
b = new B;
console.log(b.x);
Range 方法的目的是定义一个不可变的类,请实现 freezeProps 方法
function Range(from, to) {
this.from = from;
this.to = to;
freezeProps(this);
}
正确答案
function freezeProps(o) {
var props = (arguments.length == 1)
? Object.getOwnPropertyNames(o)
: Array.prototype.splice.call(arguments, 1);
props.forEach(function(n) {
if (!Object.getOwnPropertyDescriptor(o,n).configurable) return;
Object.defineProperty(o, n, { writable: false, configurable: false });
});
return o;
}
将下面代码,改写成使用模块的形式
var product = function (price) {
this.price = price;
this.getPrice = function(){
return this.price;
};
};
function doCalculations() {
var p = new product(100);
return p.getPrice();
}
doCalculations();
正确答案
var MYAPPLICATION = {
product: function (price) {
this.price = price;
this.getPrice = function(){
return this.price;
};
},
doCalculations: function () {
var p = new MYAPPLICATION.product(100);
alert(this.calculateVat(p.getPrice()));
}
}
var p = new MYAPPLICATION.product(100);
p.getPrice();
为了便于开发和演示知识定位问答工具 我们需要准备一些数据 知识点我已经准备了一部分,是关于 javascript 语言核心的知识点 知识点导图下载地址 mmap 格式 http://pan.baidu.com/share/link?uk=34055634&shareid=2515061730 bmp 格式 http://pan.baidu.com/share/link?uk=34055634&shareid=2605066501
给这个导图上的每个知识点(叶子节点),准备一个问题,根据知识点的实际情况准备合适类型的问题(多选,单选,判断,编程题)
编程题指的是类似 javascript_step 形式的问题,有具体的编程要求,不过不用准备 rule ,先准备编程要求就可以
需要做的是
给每个知识点准备一个合适的问题,汇总到一起,格式不限,方便查看和进一步整理就可以