我有两节课。珠宝是基础,而环继承自它。
var props = $(".hello").attr("style").split(";");
props.push.apply(props,
$("style").text()
.replace(/\n|\s+/g, "")
.match(/\.hello\{.*\}/)[0]
.split(/\.hello\{|\}|;/)
.filter(Boolean)
);
console.log(props, props.length);
.hello {
background: #ccc;
}
现在在主要我创建了珠宝列表,在该列表中我添加了Ring对象。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div class="hello" style="height:40px; width:60px; display:inline-block">something</div>
现在调试时我可以从珠宝列表中访问戒指对象。我能从代码中做到吗?我认为应该这样做,但这不起作用。
appspot.com
答案 0 :(得分:4)
你需要施放它,例如:
<div id="item-18995"">
<div id="item-18995-view">
<header>
<h4>
<h5>
<a href="http//www.example.com">Photo</a>
</h5>
</header>
或
var myRing = (Ring)jewellery[0];
或
var maybeRing = jewellery[0] as Ring;
if (maybeRing != null)
{
// do stuff
}
对于多种类型,您可以
if (jewellery[0] is Ring)
{
// Cast and do stuff
}
有关安全施法的信息,请参阅MSDN。
根据您的目的,您可以使用Linq按类型进行过滤:
假设:
if (jewellery[0] is Ring)
{
// Cast and do stuff
}
else if(jewllery[0] is Necklace)
{
// and so on
}
然后:
List<Jewellery> things = new List<Jewllery>();
可以:
public IList<T> GetJewellery<T>(this jewellery) where T : Jewellery
{
return jewellery.OfType<T>().ToList();
}