На компьютерном языке, до тех пор, пока существует три вида логики, последовательная логика выполнения, логику ветви и логику цикла, язык может достичь состояния, полного Тьюринга.
Toy-JS будет основан на нашей собственной семантике на
Language.md. MD.Вы должны понять лексическое определение компьютерного языка, прежде чем вы сможете понять программу. Вы также можете использовать
Language.md, чтобы помочь вам лучше понять, основываясь на MDN - лексической грамматической грамматике.
Совет: вам следует проверить, придерживаясь содержания кодового блока, в противном случае возникнут неожиданные ошибки. Эти ошибки часто являются функциями, которые в настоящее время не реализованы. Конечно, вы можете попытаться достичь этого.
Вы можете написать следующий код в Textarea и просмотреть результат после выполнения в консоли.
// and &&
false && 1 ;
undefined && 1 ;
"" && 1 ;
0 && 1 ;
1 && 0 ;
// or ||
3 || 1 ;
undefined || 1 ;
// 略...var a; a = 1; a;o = { num: 1 }; o.num; // +
a = 6 ;
a = a + 2 ;
a ;
// -
a = 6 ;
a = a - 2 ;
a ;
// *
a = 6 ;
a = a * 2 ;
a ;
// /
a = 6 ;
a = a / 2 ;
a ; a = 1 ;
if ( a ) a = 2 ;
// or
if ( a ) {
a = 2 ;
}
a ; a = 10 ;
while ( a )
a = a - 1 ;
// or
while ( a ) {
a = a - 1 ;
}
// or
while ( a ) {
a = a - 1 ;
continue ; // or break;
a = a - 100 ;
}
a ; {
let a ;
a = 1 ;
{
let b ;
a = a + 1 ;
b = 10 ;
{
b = b / 2 ;
}
}
}
// 此时无法在外部访问 a 和 b
// or
{
let a ;
a = 1 ;
{
let a ;
a = 100 ;
}
a ; // 1
} // log(); method is equivalent to console.log();
let x ;
x = 1 ;
function a ( ) {
log ( x ) ;
}
{
let x ;
x = 2 ;
a ( ) ;
}
// or
log ( 1 , 2 , 3 ) ;