Open xiaochengzi6 opened 2 years ago
js是弱类型的语言,对于变量的命名没有任何要求,还可以随意并多次命名:
var i = 1; var i = "string"; var i = function person (){ console.log("Yes") }
这些都是成功的;
但能不能像C语言的int方法来定义变量的类型,c语言中如果再次(变量名)变更就会报错;
#include <stdio.h> int main(void){ int a=88,b=89; printf("%d %d\n",a,b); return 0; }
在看到在函数中定义严格模式的时候我有了启发:
function person(){ "use strict" //.... }
当程序在执行这个函数时就查取到到这个 "use strict"并将以下代码执行在严格模式下;
那么我们能不能也借用c语言的形式能,在某种程度上可以保障变量的“不变性”,又能体会到js的弱类型的香甜呢
不妨设想一下:
//1 function person(){ number "age,sum,i"; str "name,home"; //.. }
或者是这样的形式:
//2 function person(){ "name age,sum,i"; "string name,home"; //.... }
注意:这些都是我天马行空想出来的,在编译器上这些会报错,在其他的地方也没有我这样来编写js的,
在代码1中我想使用一种新的关键字来定义这样的变量,但多方查找并没又搜到这样的案例,我想创建一种新的关键字,在js中有 new,function,var,let,const,class,等等,但这些好像都不能自己定义,我编写的代码一定要能运行在现在js上的,要不然它的实用性就等很小,但在后面的日子我又了解到了一种语言TS它里面包含了js语言且语法为这样:
//var [变量名] : [类型] = 值; var name:string = "Perter";
我感到兴奋和沮丧,原来有人比我先一步想到并做的看起来”更好“;(有点不太服气)
那我能不能像代码2一样会自动读取我自己的自变量
function person () { "name, age, sum , i"; "string, name, home" }
这段代码没有报错,成功运行,但是这样的方式我要它也没有什么用啊
在返现ts后我开始有些“萎缩”了我发现了一个比我想得更加“周到”的
所以我又换了一种思路在函数内部获取所有变量
function person(){ //代码行 //... //... function (){ //在这里获取函数全局变量用于检测 } }
将所有的变量的每次赋值的操作记录下来,放置在一个json中,然后可以某种可视化操作;
这种方法类似于 :
for (var i = 0;i<length;i++){ (function(){ setTimeout(console.log(i),0) })(i) }
在函数内放置一个闭包函数,然后获取外边的变量,并将其保存起来
这样的方法用于简单的测试,在执行中每一步是否达到了自己的想要输出的结果;
这该不会是单元测试里面的概念吧(虽然我还没有接触单元测试,但我已经有所预感)期望我这个想法是多余的;
js是弱类型的语言,对于变量的命名没有任何要求,还可以随意并多次命名:
这些都是成功的;
但能不能像C语言的int方法来定义变量的类型,c语言中如果再次(变量名)变更就会报错;
在看到在函数中定义严格模式的时候我有了启发:
当程序在执行这个函数时就查取到到这个 "use strict"并将以下代码执行在严格模式下;
那么我们能不能也借用c语言的形式能,在某种程度上可以保障变量的“不变性”,又能体会到js的弱类型的香甜呢
不妨设想一下:
或者是这样的形式:
注意:这些都是我天马行空想出来的,在编译器上这些会报错,在其他的地方也没有我这样来编写js的,
在代码1中我想使用一种新的关键字来定义这样的变量,但多方查找并没又搜到这样的案例,我想创建一种新的关键字,在js中有 new,function,var,let,const,class,等等,但这些好像都不能自己定义,我编写的代码一定要能运行在现在js上的,要不然它的实用性就等很小,但在后面的日子我又了解到了一种语言TS它里面包含了js语言且语法为这样:
我感到兴奋和沮丧,原来有人比我先一步想到并做的看起来”更好“;(有点不太服气)
那我能不能像代码2一样会自动读取我自己的自变量
这段代码没有报错,成功运行,但是这样的方式我要它也没有什么用啊
在返现ts后我开始有些“萎缩”了我发现了一个比我想得更加“周到”的
所以我又换了一种思路在函数内部获取所有变量
将所有的变量的每次赋值的操作记录下来,放置在一个json中,然后可以某种可视化操作;
这种方法类似于 :
在函数内放置一个闭包函数,然后获取外边的变量,并将其保存起来
这样的方法用于简单的测试,在执行中每一步是否达到了自己的想要输出的结果;
这该不会是单元测试里面的概念吧(虽然我还没有接触单元测试,但我已经有所预感)期望我这个想法是多余的;