github / github/codeql

Javascript: How to define an own type and mark its attributes and types

未關閉
#12,524 12 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
JS question
主要語言
CodeQL
星號
10.1k
分支
2.1k
平均合併
2 天 15 小時
30 天內合併 PR
141

描述

I want to define a Foo type in codeql, which has its own attributes and types, which is convenient for subsequent type analysis

For example, I want to find the intAdd function, the wrong call to pass the parameter is not a number

```javascript
// some function will return "Foo"
function getFoo() {
return {
id: 123,
name: "foo",
data: { xxx: "xxx" },
};
}
function createFoo() {
return {
id: 123,
name: "foo",
data: { xxx: "xxx" },
};
}
function getFoos() {
return [
{
id: 123,
name: "foo",
data: { xxx: "xxx" },
},
{
id: 123,
name: "foo",
data: { xxx: "xxx" },
},
];
}

// use the Foo
let a = {};
let f1 = getFoo();
let fs = getFoos();
intAdd(123); // good
intAdd(f1.id); // good
intAdd(f1.name); // bad
intAdd(f1.data); // bad
fs.forEach((f) =>{
intAdd(f.name); // bad
});
```

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。