2011-08-03 9 views
1

JSC seems like the simpler-and-easier 더 많은 휴대용 및 준 보편적으로 설치됨 - 세계의 node.js에 대한 명백한 대안 ... 기본 사항을 파악할 수 있었지만 거기에 주변에 떠 다니는 것이 거의 없습니다 (왜 ?터미널을 통해 JavaScriptCore/Console에 인수를 전달하는 방법 또는 다른 방법?

<script type="text/javascript" src="ntc.js"></script> 
<script type="text/javascript"> 
var n_match = ntc.name("#6195ED"); 
    n_rgb  = n_match[0]; // This is the RGB value of the closest matching color 
    n_name  = n_match[1]; // This is the text string for the name of the match 
    n_exactmatch = n_match[2]; // True if exact color match, False if close-match 
alert(n_match); 
</script> 
:), 그래서 여기에 ...

내가이처럼 시작은 .js 파일에 좋은 littlejavascript "클래스"가 .. BTW, it takes a Hex Color code and spits out a "named" color. Neat. 샘플 사용 누군가가 명확히 수 바라고 있어요 간단한 문제입니다

코드는 다음과 같이 시작됩니다.

var ntc = { 
    init: function() { 
    var color, rgb, hsl; 
    ⤹ 
} 
ntc.init(); 
,

나는 ...과 같이,이 문서의 BOTTOM에서

var n_match = ntc.name("#000000"); 
print(n_match); 

을 일부 값을 하드 코딩하고, 터미널에서 쉽고 간단하게 코드를 실행하려면 약간의 혼란이나 소란, 수 있어요. ..

/System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc -d ntc.js ↩ 

#000000,Black,true

그러나, 내 인생, 내가이 빠는 몇 가지 변수를 전달하는 방법을 알아낼 수 없습니다 ..

마찬가지로, 나는 단지 204080 8080a0 404060 a0a0a0 606080 c0c0c0 a0a0a0 606060 808080 404040 c0e080 a0e060 80c020 e0f0a0 a0e040 202020 60a0e0 60c0f0 a0a0a0 a0e0f0 202020 606060 a0a0a0 404020 604020 f0c040 202020 에서 콜백을 받고 싶지만, 팔을 비틀 수는없는 것처럼 보일 수 있습니다 .. -e 옵션은 유망 해 보이지만 아무 소용이 없습니다.

이 있습니다 .. 비유 트로이 목마 그것이 아마 이미 설치되어되고 있음을, 심지어는 실행 가능한 어쩌면이 사람에게 넘겨하는 것이 좋을 것, 수년에 걸쳐 처리하는 돌연변이있다 자바 스크립트 SOO 많은 이상한 틈새 작업이 있습니다 - 잠재적 인 클라이언트 컴퓨터. 이 모든 것이 유비쿼터스이므로 문서는 스티브 발머 팬클럽 회의 참석자만큼 드문 드문 ...

그건 그렇고, 롤,이 정보에 대한 유일한 반 유용 스 니펫 중 하나입니다 JSC 제안이 ... 제목으로 7 년 전, 석사 직원에 의해 게시되고 있었다 "Commandline.js"

import System; 
// This function reads the commandline arguments and prints them 
function PrintCommandLineArguments() { 
    var args:String[] = System.Environment.GetCommandLineArgs(); 
    var iValue:int; 
// Print the command-line arguments  
for (iValue in args) 
    Console.WriteLine(args[iValue]); 
} 
PrintCommandLineArguments(); 

나는 일에 그것을 얻을 수 있지만, 거기가 없습니다 멋지고 바지 '... 오, 솔직히 말해서, 이것은 단지 늦은 시간에 모든 서버 측 JS 사람들을 잡아 먹는 입에서의 거품에 대한 혼란을 더 해줍니다. 뉴스 ... 왜이 런타임 환경이 최신 핫 토픽 솔루션을 선호하여 푸우 푸우 (poo-pooed) 되었습니까? JSC는 엿 먹어? 나에게 단서를해라, 여동생 여자 친구. ∀Ⓛ∃✖

+0

아, 그리고 # 4682B4 사실, 회색 아스파라거스, # 465945 사실 방법,'# 462425, 분화구 브라운, 스틸 블루, 진정한 #로 480404, 소박한 빨강, 참 # 480607, 불가리아어 장미, 참 # 480656, 투명한 항아리. 회색 asaparagus는 역겨운 소리지만 ... 뜨거운 대답은 피를 흘리는 큰 소리. –

답변

3

다음은 작동하는 것 같다 :

# using Bash on Mac OS X 10.6.7 
sudo ln -is /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc /usr/local/bin 

# simple example to print passed arguments 
jsc --help # Usage: jsc [options] [files] [-- arguments] 
jsc <(echo 'print(arguments[0]); print(arguments);') -- one two three 


# http://chir.ag/projects/ntc/ 
curl -L -O http://chir.ag/projects/ntc/ntc.js 
echo ' 
for(var i in arguments) { 
    var n_match = ntc.name(arguments[i]); 
    print(n_match); 
} 
' >> ntc.js 

jsc ntc.js -- 204080 8080a0 404060 a0a0a0 606080 c0c0c0 a0a0a0 606060 808080 \ 
       404040 c0e080 a0e060 80c020 e0f0a0 a0e040 202020 60a0e0 60c0f0 \ 
       a0a0a0 a0e0f0 202020 606060 a0a0a0 404020 604020 f0c040 202020 


# For more information on using javascript from the command line see, for example: 
# - http://www.phpied.com/javascript-shell-scripting/ 
# - http://littlecomputerscientist.wordpress.com/2008/12/19/command-line-scripting-with-javascript/ 
# - http://littlecomputerscientist.wordpress.com/2008/12/20/improving-spidermonkeys-load-for-command-line-javascript/ 
+0

와우, 멋진 첫 번째 답변 ... 완벽하게 작동합니다. 내가 명확히하기 위해 추가하는 것 ... 당신은'colors ='jsc ntc.js $ arguments''를 저장하고 출력을 제대로 얻으려면'echo $ colors'를 저장하고 싶습니다. 너 알아 냈어? 어떤 이유로 js의 문법으로 한 페이지 등에서 철자를 쓰지 않았을 때마다 그것이 얻을 수있는 모든 기회에 나를 놀라게합니다.심지어이 아름다운, 일하는 해결책을 보면서, 나는 그것을 얻지 않는다, 롤. 불법 마약이나 브로셔를 추천 해 드릴 수 있습니까? 이런 일이 "당신에게 일어납니다"? –

관련 문제