JavaScript基础

2017-01-29  本文已影响0人  zydragon

★★★★★

  1. call和apply的含义和区别
  1. javascript的数据类型 和内存存储
  1. 如何解决跨域?
    想要访问其他网站上的js脚本,使用ajax会遇到跨域问题,跨域问题来源于同源策略,为了数据安全,ajax规定不能跨域访问。
  1. 同步和异步的区别?
    JavaScript将任务的执行模式分为:同步(Synchronous)和异步(Asynchronous)。
    JavaScript语言的执行环境是"单线程",就是指一次只能完成一个任务。如果有多个任务就必须排队,前面一个任务完成,再执行后面的任务,一次类推。这便是"同步模式",程序的执行顺序和排列顺序是一致的,同步的;"异步模式"则完全不同,每一个任务有一个或多个回调函数,前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则是不等待前一个任务结束就执行,程序的执行顺序和排列顺序不是一致的,异步的。锅里正煲着汤,同时我在为下一道菜做着准备。
  1. 字符串函数和数组函数
    (1) 字符串函数

    • str.charAt(下标)----返回指定位置的字符
      str.charCodeAt(下标)----返回指定位置字符的ASCII值
      str.fromCharCode(编码1,编码2,…)----接收一个或多个ASCII值,返回对应的字符

    • 查找类型

      • str.indexOf(字符)----返回该字符在字符串中首次出现的位置,若字符不存在则返回-1;
      • str.lastIndexOf(字符)----返回该字符在字符串中最后一次出现的位置,若字符不存在则返回-1;
      • str.match(字符)----在字符串中查找字符,若存在则返回该字符,若不存在则返回null;
      • str.replace(被替换的字符串,新字符串)----返回替换后的新字符串,不会影响原来的字符串。

(2) 数组函数

*  添加删除类
  * arr.push()----在数组后面添加元素,返回数组的长度,会影响原数组
  * arr.pop()----在数组后面删除一个元素,返回被删除的元素,会影响
  * arr.unshift()----从前面添加元素,返回值为数组的长度,会影响原数组
  * arr.shift()----从数组的前面删除一个元素,返回值为删除的元素,会影响原数组
  * arr.splice(index,数量,添加的元素1,2,...)----万能的添加删除函数,index表示要操作的元素位置下标,数量:0表示添加,返回值空白,0以外数字表示删除的个数,返回删除的元素
  1. 事件委派
  1. document load 和document ready的区别
  1. 一个接口为ajax/api.jsp,请求方式为GET,有一个名为ulr的参数。值为当前页面的URl,正常情况下,返回到内容是{result:true,mes:"success"},请用ajax组件,写一段在正常浏览器可以运行的代码,将结果解析成json的对象格式

★★★★

  1. JavaScript的基本命名规范
  1. JavaScript的原型和原型链,有什么特点?
  1. JavaScript如何实现继承?
  1. JavaScript作用域链
  1. null和undefined的区别
  1. 什么是闭包,为什么使用它?
  1. new操作符究竟干了些什么?
    function New (f) {
    /1. 创建对象并设置原型链/
    var n = { 'proto': f.prototype };
    return function () {
    /2. 设置this指向/
    f.apply(n, arguments);
    /3. 返回函数/
    return n;
    };
    }
  2. 写一个js函数,将地址参数解析为一个对象
  3. 删除数组中的重复元素
  4. 如何判断某个对象是否是某个类的实例化?
  5. 添加事件的方式?
  6. IE和doms事件的区别
  7. DOM 节点的所有操作和方法
  8. 强转和隐式类型转化

★★★

  1. JavaScript创建对象的几种方式
  1. 什么是window对象? 什么是document对象?
  1. ["a","b","c"].map(parseInt)的结果是什么?
  2. javascript 中的“use strict”是什么意思?使用它区别是什么?
  3. 求两个正整数的最大公约数
  4. ”==”和“===”的不同
  5. json和jsonp有什么差异?
  6. ajax 和jsonp的区别
  7. j延迟加载的方式
  8. 如何用js实现类,成员,私有变量?
  9. eval的作用
  10. js的兼容性问题
  11. 继承的顺序
  12. 解释jsonp的原理,以及为什么不是真正的ajax
  13. javascript的本地对象,内置对象和宿主对象

★★

  1. document.write 和innerHTML的区别?
  2. 使用闭包的例子
  3. 什么是cookie隔离?
  4. 所有可以在浏览器保存数据,然后下次访问的方式
  1. 哪些操作会造成内存泄露?
    内存泄露可以定义为应用程序不再需要的内存,因为某种原因其不会返回到操作系统或可用内存池。 会导致迟缓,崩溃,高延迟等应用问题。
  2. 声明变量忘记使用关键字var创建一个意外的全局变量
* 为了防止这些错误发生,添加'use strict'; 在您的JavaScript文件的开头。 这使得能够更严格地解析JavaScript以防止意外的全局变量。
  1. 被遗忘的事件函数或回调函数
  2. 脱离 DOM 的引用
  3. 闭包
  4. javascript的同源策略
  1. 本地对象,内置对象,宿主对象
  1. this 的情况
  1. 下面哪种写法会报错?
    A: var a=();
    B: var a={};
    C: var a=[];
    D: var a=/ /;

  1. 如果你手动实现动画,你认为最小的时间间隔是多少?
  2. 十六进制颜色转化为rgb颜色
    var sRgb = "RGB(23, 245, 56)" , sHex = "#34538b";
    var sHexColor = sRgb.colorHex(); //rgb颜色转换为十六进制颜色
    var sRgbColor = sHex.colorRgb(); //十六进制颜色转换为rgb颜色
  3. 下面哪种写法可以匹配一个正整数
    A: ^[1-9]\d1.$;
    B: ^[1-9]+$;
    C: ^[0-9]\d1.$;
    D: ^[1-9]\d+$;
上一篇 下一篇

猜你喜欢

热点阅读