以下代码均可以在nodejs和chrome的console里运行

以下均未考虑兼容,空判断,父类属性,解除绑定, 多层关系, 循环调用,多次调用等

Step 1 接管赋值和取值

1
2
3
4
5
6
7
8
9
10
11
12
13
const demo = {};
demo._dAtA = {};
Object.defineProperty(demo, 'x', {
get: function(){
return demo._dAtA['x'] * 2;
},
set(val){
console.log(val);
demo._dAtA['x'] = val;
}
})
demo.x = 123
console.log(demo.x)

专门做了个赋值取值不一致的乘2

閱讀全文 »

发现android 11 开发者模式 多了个无线调试

准备

android 11,开发者模式

电脑:

android platform tools adb 30 版本

1
2
3
4
adb --version
Android Debug Bridge version 1.0.41
Version 30.0.5-6877874 # 这里 要30版本
Installed as /<your path>/Sdk/platform-tools/adb

使用

手机上:

閱讀全文 »

mkpipe

众所周知

ls | grep hey中的竖线是pipe,

同样,我们可以用mkfifo创建命名的管道

创建

1
mkfifo /tmp/pipedemo

输入

1
ls > /tmp/pipedemo

读出

1
cat < /tmp/pipedemo

输入和读出不用保证执行顺序

閱讀全文 »