r83 vs r84
......
483483
{{{#!if ~(!true)==false
484484
출력}}}
485485
----
486
{{{#orange}}} 결론 : ~ 기호는 논리 연산으로는 동작되지 않는다.
486
{{{#orange 결론}}} : ~ 기호는 논리 연산으로는 동작되지 않는다.
487487
488488
다만 위의 ~(-1)==1 을 가져와서 비트 연산이 참인지 거짓인지 나오는 결과를 두고 논리식을 만들기는 가능하다.
489489
!(~(-1)==1) : false 부정이므로 출력된다.
......
539539
{{{#skyblue 변수명}}}=}}}이라고 적으면 {{{#skyblue 변수명}}}은 "정의한 값이 없음(null)"이 아니라 "빈 텍스트 값"이 된다.
540540
{{{#orange 결론 2}}} : true, false는 "정의한 논리값"이므로 null과 다르다.
541541
542
== 역링크 기타 테스트 ==
543
||If true [[틀:토론]] include[br]{{{#!if true
544
[include(틀:토론)]}}}||
545
||If false [[틀:폐쇄]] include[br]
546
{{{#!if false
547
[include(틀:폐쇄)]}}}||
548
출력이 되지 않는 틀은 역링크를 조회해보면 include로 역링크가 걸리지 않는다.
549
----
550
||If true [[:분류:나무마크 문법|분류:나무마크 문법]][br]{{{#!if true
551
[[분류:나무마크 문법]]}}}||
552
||If false [[:분류:위키]][br]{{{#!if false
553
[[분류:위키]]}}}||
554
출력이 되지 않는 분류로는 해당 문서가 포함되지 않는다.
555
----
556
||If true \#\#\@[br]{{{#!if true
557
##@if true
558
}}}||
559
||If false \#\#\@[br]{{{#!if false
560
##@if false
561
}}}||
562
\#\#\@ 테스트. If 문구 사이에 \#\#\@를 끼워넣어도 편집창 상단 표시에 출력되어 나온다.
563
564
||{{{#!wiki style="display:inline;"
565
\#\#\@If true
566
##@{{{#!if true
567
##@if true
568
##@}}}
569
}}}||
570
||{{{#!wiki style="display:inline;"
571
\#\#\@If false
572
##@{{{#!if false
573
##@if false
574
##@}}}
575
}}}||
576
단, \#\#\@ 로 표시되는 공간에 If 구문이 걸리면 true일 때만 출력된다.
577
----
578
{{{#!if false
579
이 내용은 false라서 나오지 않습니다.
580
예시 :
581
토론 합의 내용
582
* 문서명(표제어)을 A로 정한다. (/threadslug1 토론 합의)
583
* 문서의 B 서술을 존치한다. (/threadslug2 토론 합의)
584
* 문서의 C 서술을 삭제한다. (/threadslug3 토론 합의)
585
}}}
586
출력되지 않는 점을 이용하면 [[\#\#주석]] 못지 않게 활용할 수 있을 듯하다.
587
----
542
== 체계 확장 테스트 ==
588543
제곱근
589544
[math(2\times\sqrt{3}=\sqrt{12})] : 출력된다.
590545
{{{#!if 2.0*(3.0**0.5)==12.0**0.5
......
659614
{{{#!if ((-1.0)**0.5)**2.0==0.0**1.0-1.0
660615
출력}}}
661616
662
----
617
{{{#orange 결론}}} : (%로 잘만 달랜다면) 실수 범위의 계산까지 다룰 수 있다.
618
619
물론 [math(e^{i \pi}=-1)][* 오일러 등식] 같이 복잡한 계산을 생각해볼 수는 있겠지만, [math(\sin)], [math(\cos)] 등이 지원된다 하더라도 [[틀:계산기]][* 계산값 자체를 출력하는 방법이 아직까지는 발견되지 않아서 계산하여 나오는 값을 자리 단위로 끊어서 출력해주는 틀이다.]처럼 계산값을 출력하거나 판독해줘야 의미가 있으므로 그런거 까지 코딩 공사하려면 규모가 크다.
620
621
== 비트 연산 테스트 ==
663622
Zeroization. 자기 자릿수 이상으로 밀어버리면 0이 된다.
664623
1>>1=0 : 출력된다.
665624
{{{#!if 1>>1==0
......
692651
{{{#!if 42>>3==95>>4
693652
출력}}}
694653
654
== 역링크 등 기타 테스트 ==
655
||If true [[틀:토론]] include[br]{{{#!if true
656
[include(틀:토론)]}}}||
657
||If false [[틀:폐쇄]] include[br]
658
{{{#!if false
659
[include(틀:폐쇄)]}}}||
660
출력이 되지 않는 틀은 역링크를 조회해보면 include로 역링크가 걸리지 않는다.
661
----
662
||If true [[:분류:나무마크 문법|분류:나무마크 문법]][br]{{{#!if true
663
[[분류:나무마크 문법]]}}}||
664
||If false [[:분류:위키]][br]{{{#!if false
665
[[분류:위키]]}}}||
666
출력이 되지 않는 분류로는 해당 문서가 포함되지 않는다.
667
----
668
||If true \#\#\@[br]{{{#!if true
669
##@if true
670
}}}||
671
||If false \#\#\@[br]{{{#!if false
672
##@if false
673
}}}||
674
\#\#\@ 테스트. If 문구 사이에 \#\#\@를 끼워넣어도 편집창 상단 표시에 출력되어 나온다.
675
676
||{{{#!wiki style="display:inline;"
677
\#\#\@If true
678
##@{{{#!if true
679
##@if true
680
##@}}}
681
}}}||
682
||{{{#!wiki style="display:inline;"
683
\#\#\@If false
684
##@{{{#!if false
685
##@if false
686
##@}}}
687
}}}||
688
단, \#\#\@ 로 표시되는 공간에 If 구문이 걸리면 true일 때만 출력된다.
689
----
690
{{{#!if false
691
이 내용은 false라서 나오지 않습니다.
692
예시 :
693
토론 합의 내용
694
* 문서명(표제어)을 A로 정한다. (/threadslug1 토론 합의)
695
* 문서의 B 서술을 존치한다. (/threadslug2 토론 합의)
696
* 문서의 C 서술을 삭제한다. (/threadslug3 토론 합의)
697
}}}
698
699
{{{#orange 결론}}} : 출력되지 않는 점을 이용하면 [[\#\#주석]] 못지 않게 활용할 수 있을 듯하다.
700
----
701
695702
== 메모 ==
696703
* If 조건문에 함수를 넣을 수 있을까?
697704
예 : dday를 넣어서 누구누구 운영자가 재직 며칠이 되었음을 적을 수 있음, pagecount를 넣어서 이 문서 개수가 몇 개를 돌파했음을 알릴 수 있음, 대문 기념일 틀을 기념일 되기 한참 전에 미리 만들어놓고 if를 걸어놓을 수 있음, 나무위키 공지 틀(고정 주석 문법)에 if를 걸어놓을 수 있음.{{{#!folding 예시 보기, 접기
......
721728
||{{{#!wiki style="margin: 0 0 0 -0.25em; display: inline; font-family:monospace;"
722729
\{\{\{#!if {{{#blue (논리식)}}}
723730
{{{#green (논리식이 true이면 출력할 내용)}}}\}\}\}}}}||
731
||조건문에 지원되는 기능 : {{{#!wiki style="display: inline; font-family:monospace;"
732
true, false, null, this}}} 등등||
724733
|| 추정되는 문법 ||
725734
If구문은 고장난 구문(문법)은 아니지만, ---잠수함 패치로 인해--- 변수를 연결할 수 있는 입력방법을 찾아야 한다. 조건부에 텍스트값, 정수 숫자값, 실수 숫자값, 논리값(true 또는 false)은 지원되는 입력으로 보인다. 연산할 값의 종류와 연산하여 나오는 값의 종류에 알맞은 기호만 쓴다면 원하는 설계에서 크게 벗어나지 않게 이용할 수 있다.