如果以下示例将IFS
环境变量设置为换行符...
IFS=$'\n'
Run Code Online (Sandbox Code Playgroud)
我知道IFS
环境变量是什么,\n
字符是什么(换行),但为什么不使用以下形式:(
IFS="\n"
哪个不起作用)?
例如,如果我想循环遍历文件的每一行并想要使用for循环,我可以这样做:
for line in (< /path/to/file); do
echo "Line: $line"
done
Run Code Online (Sandbox Code Playgroud)
但是,除非IFS
设置为换行符,否则这将无法正常工作.为了让它工作,我必须这样做:
OLDIFS=$IFS
IFS=$'\n'
for line in (< /path/to/file); do
echo "Line: $line"
done
IFS=$OLDIFS
Run Code Online (Sandbox Code Playgroud)
注意:我不需要另一种方式做同样的事情,我已经知道很多其他的...我只是对此感到好奇,$'\n'
并想知道是否有人可以给我一个解释.
我正在读一本名为JavaScript模式的书,但有一部分我觉得这个人很困惑.
这个家伙实际上在书中引出了klass设计模式,在那里他逐一开发了它.他首先提出了这个问题:
function inherit(C, P) {
C.prototype = P.prototype;
}
Run Code Online (Sandbox Code Playgroud)
他说:
"这为您提供了简短快速的原型链查找,因为所有对象实际上共享相同的原型.但这也是一个回顾,因为如果继承链中的某个子项或孙子修改原型,它会影响所有父母和祖父母."
但是,我实际上试图在Child中修改原型say()并且它对Parent没有影响,实际上Child仍指向Parent并且完全忽略了它自己的同名原型,这是有意义的,因为它指向不同的内存位置.那家伙怎么能这样说呢?以下证明了我的观点:
function Parent(){}
Parent.prototype.say = function () {
return 20;
};
function Child(){
}
Child.prototype.say = function () {
return 10;
};
inherit(Child, Parent);
function inherit(C, P) {
C.prototype = P.prototype;
}
var parent = new Parent();
var child = new Child();
var child2 = new Child()
alert(child.say(); //20
alert(parent.say()); //20
alert(child2.say()); //20
Run Code Online (Sandbox Code Playgroud)
任何孩子或孙子都不可能修改原型!
这导致了我的第二点.他说,在继承链(我无法重现)中意外修改父原型的可能性问题的解决方案是打破父母和孩子原型之间的直接联系,同时从原型链中受益.他提供以下解决方案:
function inherit(C, P) {
var F = function () {};
F.prototype = P.prototype; …
Run Code Online (Sandbox Code Playgroud) 我有一个使用JRE 1.4环境的NetBeans项目,这意味着我不能使用泛型.
如何更改项目以使用1.6(?),以便我可以使用泛型.
我从数据仓库获取社会安全号码(SSN).在将其发布到CRM时,我希望将其格式化为XXX-XX-XXXX
而不是XXXXXXXXX
.
这就像将一个简单的字符串在位置破折号4
和7
.我对C#很陌生,那么最好的方法是什么?
我正在创建我的第一个插件,并有一个控制输出的函数.此功能根据是否从WordPress管理员与前端内部进行查看而具有不同的输出.有没有办法轻松测试我的功能是否从管理员与前端内部触发?
我已经尝试有条件地检查查询字符串与我的插件"页面"名称的名称,但似乎在某些服务器/安装上失败.
谢谢
在哪里可以找到用OpenCL或CUDA编写的对象检测工作代码(计算机视觉的一部分)?非常感谢提前.
我in_array()
用来检查数组中是否存在值,如下所示
$a = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $a))
{
echo "Got Irix";
}
//print_r($a);
Run Code Online (Sandbox Code Playgroud)
但是多维数组怎么样(下图) - 如何检查该值是否存在于多数组中?
$b = array(array("Mac", "NT"), array("Irix", "Linux"));
print_r($b);
Run Code Online (Sandbox Code Playgroud)
或者我不应该在使用in_array()
多维数组时使用?
有没有办法确定何时完成UITableView加载所有行?
我不确定这是否对我造成了问题.我尝试自动选择表中的第一行,但它没有这样做,并且至少有一行.
这是我想要做的:
当前表:
+----+-------------+
| id | data |
+----+-------------+
| 1 | max |
| 2 | linda |
| 3 | sam |
| 4 | henry |
+----+-------------+
Run Code Online (Sandbox Code Playgroud)
神秘查询(类似的东西"UPDATE table SET data = CONCAT(data, 'a')"
)
结果表:
+----+-------------+
| id | data |
+----+-------------+
| 1 | maxa |
| 2 | lindaa |
| 3 | sama |
| 4 | henrya |
+----+-------------+
Run Code Online (Sandbox Code Playgroud)
而已!我只需要在一个查询中完成它,但似乎找不到方法.我在bluehost上使用mySQL(我认为它的版本是4.1)
感谢大家.
具有alpha-beta修剪的minimax算法能否产生与minimax不同的答案而不进行修剪?
.net ×1
admin ×1
algorithm ×1
arrays ×1
bash ×1
c ×1
c# ×1
chaining ×1
concat ×1
cuda ×1
gpgpu ×1
ifs ×1
inheritance ×1
iphone ×1
java ×1
javascript ×1
minimax ×1
mysql ×1
netbeans ×1
netbeans-6.9 ×1
objective-c ×1
opencl ×1
php ×1
prototype ×1
reference ×1
shell ×1
sql ×1
uitableview ×1
variables ×1
wordpress ×1