1)
var a = [];
a[100] = 1;
console.log(a.length); // 101
console.log(a[0]); // undefined
a[200] = undefined;
console.log(a.length); // 201
console.log(a['100']); // 1
2)函数中this指向什么? call, apply, bind的用法和区别。
3)说说对prototype和__proto__的理解
4)
var s = [];
function foo() {
for (var i = 0; i < 3; i++) {
s[i] = function () {
console.log(i);
}
}
}
foo(); // 空
s[0](); // 3
s[1](); // 3
s[2](); // 3
5)说说ES6为什么要引入let关键字?
6)什么是draw call?为什么减少draw call可以优化游戏速度?如何建撒后draw call?在creator中如何做?
7)一张1024*1024, 16位的贴图,在内存里面占多少个字节?
8)cocos中sprite的Blend属性,Src Blend Factor设置为SRC_ALPHA, Dst Blend Factor设置为ONE_SRC_ALPHA是什么意思? 有什么用?
9)null和undefined的区别?
10)
var a: number;
var b: number = null;
function check(x, name){
if(x == null){
console.log(name + ' == null')
}
if(x === null){
console.log(name + '===null')
}
if(typeof x === 'undefined'){
console.log(name + ' is undefined')
}
}
check(a, 'a')
check(b, 'b')
console.log(typeof null)
console.log(typeof undefined)
/*
a == null
a is undefined
b == null
b===null
object
undefined
*/
11)
cocos 的内存管理机制是什么? 如何优化?
12)2D平面下,如何实现凹多边形碰撞?有哪些方法?
13)PNG和JPG的对比,优缺点?
14)介绍下cocos assetbundle的了解?
15)如何优化手机发热问题?