Php 如何通过终端或其他方式将参数传递给JavaScriptCore/控制台?
,更具便携性,并且几乎是普遍安装的-这显然是世界上node.js的替代品。。。我已经能够找出基本的问题,但几乎有一个nada在那里浮动(为什么?),所以这里有一个简单的问题,我希望有人能澄清 我在一个.js文件中有一个很好的小JavaScript“类”,它的开头是这样的。。。示例用法:Php 如何通过终端或其他方式将参数传递给JavaScriptCore/控制台?,php,javascript,bash,command-line,webkit,Php,Javascript,Bash,Command Line,Webkit,,更具便携性,并且几乎是普遍安装的-这显然是世界上node.js的替代品。。。我已经能够找出基本的问题,但几乎有一个nada在那里浮动(为什么?),所以这里有一个简单的问题,我希望有人能澄清 我在一个.js文件中有一个很好的小JavaScript“类”,它的开头是这样的。。。示例用法: <script type="text/javascript" src="ntc.js"></script> <script type="text/javascript"> va
<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>
我能够,不费吹灰之力,在本文档的底部对一些值进行硬编码,如下所示
var ntc = {
init: function() {
var color, rgb, hsl;
⤹
}
ntc.init();
var n_match = ntc.name("#000000");
print(n_match);
并从终端简单方便地运行代码
/System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc -d ntc.js ↩
#000000,黑色,真
然而,就我的一生而言,我不知道如何将一些变量传递给这个吸盘
比如,我只想从204080获得一个回调
80A0
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
选项看起来很有希望,但没有效果
这些年来,javascript处理了很多奇怪的、特殊的任务,如果能把它们交给这个家伙就太好了。。比喻中的特洛伊木马可能已经在潜在的客户端机器上安装,甚至可能可以运行。尽管这件事无处不在,但文件却和出席史蒂夫·鲍尔默粉丝俱乐部会议一样稀少
这就是说,lol,关于这个JSC的唯一一个半有用的信息片段是来自一位微软员工7年前的一篇帖子,这篇帖子暗示。。。标题为“Commandline.js”
我不能让它发挥作用,但总有办法的,聪明的裤子。。。哦,坦率地说,这只是增加了我对最近所有服务器端JS用户口中的泡沫的困惑,因为这肯定是个老消息。。。无论如何,为什么这个运行时环境会被当前热门话题的解决方案所取代?JSC糟糕吗?给我线索,姐妹们。∀Ⓛ∃✖ 以下方法似乎有效:
# 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/
在Mac OS X 10.6.7上使用Bash
sudoln-is/System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc/usr/local/bin
#打印传递参数的简单示例
jsc--帮助#用法:jsc[选项][文件][--参数]
jsc>ntc.js
jsc ntc.js——204080 8080a0 404060 a0a0a0 606080 c0c0c0 A0A0A0A0 606060 8080\
404040 c0e080 a0e060 80c020 E0F0A0A040 202020 60a0e0 60c0f0\
A0A0A0E0F0 202020 606060 A0A0A0A0 404020 604020 f0c040 202020
#有关从命令行使用javascript的更多信息,请参见,例如:
# - 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/
哇,第一个答案很好。。。它工作得很好。我唯一想补充澄清的是。。。您需要保存
colors=
jsc ntc.js$arguments``然后echo$colors
以正确获得输出。。就个人而言。。你怎么知道的?它当然没有在an页面中详细说明,等等。出于某种原因,js的语法让我一有机会就感到困惑。即使看到这个美丽的、有效的解决方案,我也不明白,哈哈。你能推荐一些精神游行、非法药物或宣传册让这种事情“发生在你身上”?哦,顺便说一句,”462425,火山口棕色,真的465945,灰色芦笋,真的4682B4,钢蓝,真的480404,乡村红,真的480607,保加利亚玫瑰,真的#480656,千里眼,真的
。灰色的天牛听起来很恶心。。。但是皮特的回答很火爆。
# 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/