t m l e x p o s i n g ( b e g i n n e r P r o g r a m , d i v , b u t t o n , t e x t ) i m p o r t H t m l . E v e n t s e x p o s i n g ( o n C l i c k ) m a i n = b e g i n n e r P r o g r a m { m o d e l = 0 , v i e w = v i e w , u p d a t e = u p d a t e } v i e w m o d e l = d i v [ ] [ b u t t o n [ o n C l i c k D e c r e m e n t ] [ t e x t " ‐ " ] , d i v [ ] [ t e x t ( t o S t r i n g m o d e l ) ] , b u t t o n [ o n C l i c k I n c r e m e n t ] [ t e x t " + " ] ] t y p e M s g = I n c r e m e n t | D e c r e m e n t u p d a t e m s g m o d e l = c a s e m s g o f I n c r e m e n t ‐ > m o d e l + 1 D e c r e m e n t ‐ > m o d e l ‐ 1
e q u i r e ( ' d i s t / e l m / a p p . j s ' ) ; v a r n o d e = d o c u m e n t . g e t E l e m e n t B y I d ( ' e l m ‐ a p p ' ) ; v a r a p p = E l m . A p p . e m b e d ( n o d e ) ;
a t i v e ) a d d ( a d d ( x , y ) , z ) = = a d d ( x , a d d ( y , z ) ) ; / / 交换律(c o m m u t a t i v e ) a d d ( x , y ) = = a d d ( y , x ) ; / / 同一律(i d e n t i t y ) a d d ( x , 0 ) = = x ; / / 分配律(d i s t r i b u t i v e ) m u l t i p l y ( x , a d d ( y , z ) ) = = a d d ( m u l t i p l y ( x , y ) , m u l t i p l y ( x , z ) ) ;
i x t e e n = 8 * 2 i s T e e n a g e a g e = ( a g e > 1 2 ) & & ( a g e < 2 0 ) i s T e e n a g e N o P a r e n s a g e = a g e > 1 2 & & a g e < 2 0
n n e r P r o g r a m { m o d e l = 0 , v i e w = v i e w , u p d a t e = u p d a t e } v i e w m o d e l = d i v [ ] [ b u t t o n [ o n C l i c k D e c r e m e n t ] [ t e x t " ‐ " ] , d i v [ ] [ t e x t ( t o S t r i n g m o d e l ) ] , b u t t o n [ o n C l i c k I n c r e m e n t ] [ t e x t " + " ] ] t y p e M s g = I n c r e m e n t | D e c r e m e n t u p d a t e m s g m o d e l = c a s e m s g o f I n c r e m e n t ‐ > m o d e l + 1 D e c r e m e n t ‐ > m o d e l ‐ 1