vue响应式原理简单实现:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<input id="index--input" value="">
<p id="index--p"></p>
</body>
<script type="text/javascript">
    let obj = {}
    let value = undefined
    Object.defineProperty(obj, 'value', {
        get() {
            console.log('get was called')
            return value
        },
        set(v) {
            console.log('set was called')
            value = v
            document.getElementById('index--p').innerHTML = v
        }
    })
    window.onload = function () {
        window.addEventListener('input', function (event) {
            obj.value = event.target.value
        })
    }
</script>
</html>