Skip to content

Object.create()

Object.create() 静态方法以一个现有对象作为原型,创建一个新对象。

javascript
function create(proto, propertiesObject) {
  const obj = {};
  if (!proto) {
    Object.setPrototypeOf(obj, null);
    return obj;
  }
  if (!propertiesObject) {
    Object.setPrototypeOf(obj, proto);
    return obj;
  }
  Object.setPrototypeOf(obj, proto);
  Object.defineProperties(obj, propertiesObject);
  return obj;
}

es6 和 es5 的继承

实现继承的方式不同

  • es5 通过原型和原型链继承,子类通过原型对象继承父类的方法和属性。子类需要调用父类的构造函数来完成继承过程。
  • es5 的静态函数需要手动设置
js

js 如何处理中文输入法的问题

html
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
  </head>
  <body>
    <input id="currentInput" />
  </body>
  <script>
    const currentInput = document.getElementById('currentInput');
    currentInput.addEventListener('compositionstart', function () {
      console.log('start');
    });
    currentInput.addEventListener('compositionend', function () {
      console.log('end');
    });
    currentInput.addEventListener('input', function () {
      console.log('input');
    });
  </script>
</html>